Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[SFML] pobieranie tekstu

Ostatnio zmodyfikowano 2012-12-30 20:12
Autor Wiadomość
Natoito
Temat założony przez niniejszego użytkownika
[SFML] pobieranie tekstu
» 2012-12-26 12:18:33
jak w temacie
istnieje w SFML jakaś metoda na pobieranie tekstu z podanego z klawiatury, jakieś pole tekstowe itp.? chodzi mi po prostu aby wstawić te pole do okna, wpisać tam tekst i potem pobrać zawartość. ogólnie wiem jak to zrobić bez tego pola ale chociażby na przyszłość by mi się to przydało. szukam w google i tu na stronie ale nic nie znalazłem jak na razie :<
P-71982
SeaMonster131
» 2012-12-26 12:46:50
Szukaj czegoś w tym stylu:
Frazy, które należy wpisać w wyszukiwarkę google:
P-71986
Natoito
Temat założony przez niniejszego użytkownika
» 2012-12-27 00:31:49
ok, zrobiłem pobieranie naciśniętego znaku z klawiatury za pomocą Text Event, zamieniam ten znak na string i potem dodaje go do całego napisanego słowa a na koniec zamieniam go na String z SFML i wyświetlam to słowo na ekranie w czasie rzeczywistym. mam 7 elementową tablice typu String ze słowami które są wyświetlane w tym ostatni element różny od "0" jest slowem wpisywanym z klawiatury, lecz mój kod wymaga aby przed wyświetleniem elementu z tablicy sprawdzał czy w tym elemencie znajdują się odpowiednie znaki( w moim przypadku wyświetlam tę tablice w pętli i jeśli w tej tablicy element posiada warość "0" to przerywa wyświetlanei i wykonuje się dalsza część programu) i gdy wielkość słowa podanego z klawiatury przekracza 15 znaków metoda .GetText() z String wywala błędy i program się sypie. niestety nie mam pomysłów jak na razie co z tym zrobić a ograniczenie wpisywanego tekstuy do 15 znaków aby to ominać nie wchodzi w grę. w razie potrzeby wkleję kod
P-72053
Mrovqa
» 2012-12-27 17:10:53
Wypadałoby wkleić kod, bez tego to jest wróżenie z fusów.
P-72096
Natoito
Temat założony przez niniejszego użytkownika
» 2012-12-27 21:17:12
fragment kodu odpowiedzialnego za wyświetlanie
C/C++
for( unsigned short int i = 0; i < SizeLabelNick; i++ )
{
    if(( string ) LabelNick[ i ].GetText() == "0" ) break;
   
    if(( string ) LabelNick[ i ].GetText() == "New Profile" ) LabelNick[ i ].SetColor( Color::Yellow );
   
    if( BoolSelectButtonNick[ i ] )
    {
        NickButton[ i ].SetColor( SelectNickButtonColor );
        Windowgame.Draw( NickButton[ i ] );
    } else
    {
        NickButton[ i ].SetColor( NickButtonColor );
        Windowgame.Draw( NickButton[ i ] );
    }
    if( WhichActiveSelectProfile[ i ] )
    {
        NickButton[ i ].SetColor( SelectNickButtonColor );
        Windowgame.Draw( NickButton[ i ] );
    }
    if( SelectNewProfile &&( i == WhichNewrofile ) )
    {
        LabelNick[ WhichNewrofile ].SetText( NewProfileCreate );
        LabelNick[ WhichNewrofile ].SetColor( Color::Yellow );
    }
    Windowgame.Draw( LabelNick[ i ] );
}

fragment odpowiedzialny za Event wykrycia wciśniętego znaku
C/C++
if( EventGame.Type == Event::TextEntered && SelectNewProfile )
{
    Symbol = EventGame.Text.Unicode;
    WriteNewProfile( Symbol, NewProfileCreate );
}

funkcja WriteNewProfile:
C/C++
void WriteNewProfile( char Symbol, string & NewProfileCreate )
{
    stringstream StreamCharToString;
    string Help;
    StreamCharToString << Symbol;
    StreamCharToString >> Help;
    NewProfileCreate.append( Help );
}

dalej nie znalazłem rozwiązania
P-72136
Natoito
Temat założony przez niniejszego użytkownika
» 2012-12-29 19:29:13
a to że wywala błąd przy .GetText() wiem z debbugera więc na pewno tu chodzi tylko o tą metodę
P-72316
Natoito
Temat założony przez niniejszego użytkownika
» 2012-12-30 20:12:27
temat do zamknięcia, znalazłem rozwiązanie, chodziło o runtime library, miałem ustawione na /MTd i /MT a zmieniłem na /MDd dla wersji debug i /MD dla wersji release
P-72424
« 1 »
  Strona 1 z 1