[SFML 2.1] wczytywanie tekstu z klawiatry i wypisywanie na ekran
Ostatnio zmodyfikowano 2014-06-03 17:54
chitler Temat założony przez niniejszego użytkownika |
[SFML 2.1] wczytywanie tekstu z klawiatry i wypisywanie na ekran » 2014-06-03 17:20:16 Wydawało mi się że prosta sprawa. tak wygląda kod displayNameText jest zdefiniowany wczesniej jako string czar to char; żeby to działało muszę kliknąć na konsolę. ale nawet i potem to nie działa tak jak powinno. wydaje mi się że getch() w ogóle nie jest odpowiednią funkcją do zczytywania znaków z klawiatury w SFMLu jak zrobić coś takiego poprawnie? while( Window.isOpen() ) { displayNameText.setString( displayName ); sf::Event Event; while( Window.pollEvent( Event ) ) { switch( Event.type ) { case sf::Event::Closed: Window.close(); break; case sf::Event::MouseButtonPressed: break; case sf::Event::KeyPressed: cout << "nacisnieto przycisk" << endl; czar = getch(); displayName += czar; break; default: break; } } Window.clear( sf::Color::Black ); Window.draw( displayNameText ); Window.display(); }
|
|
Medivox |
» 2014-06-03 17:27:29 Nie jestem pewien, czy o to Ci chodzi, ale znak pobrany przez getch() z biblioteki CONIO jest zapisany w zmiennej typu int, którą na zewnątrz wyprowadza się funkcją putch().
EDIT: Jeśli chcesz rozszerzyć zmienną typu string o pobrany znak, to:
char znak = (char)czar ; displayName += znak ;
Powinno działać. |
|
maly |
» 2014-06-03 17:35:14 |
|
chitler Temat założony przez niniejszego użytkownika |
» 2014-06-03 17:54:46 rozwiązanie od wormsta case sf::Event::KeyPressed: cout << "nacisnieto przycisk" << endl;
i = Event.key.code; czar = i + 65; displayName += czar; break;
|
|
« 1 » |