Szukam konsoli
Ostatnio zmodyfikowano 2011-04-22 19:31
absflg Temat założony przez niniejszego użytkownika |
Szukam konsoli » 2011-04-22 13:54:14 Poszukuję jak najbardziej przenośnej biblioteki pozwalającej na manipulację konsolą lub jakimkolwiek tworem wyświetlającym okno z czcionką stałej szerokości. Koniecznie z możliwością zmiany koloru znaków i ich tła, i możliwością przeniesienia kursora w dowolne jej miejsce. Może mi ktoś coś polecić. |
|
ison |
» 2011-04-22 14:23:32 |
|
pekfos |
» 2011-04-22 16:27:19 pod windows, PDcurses lub WinAPI (ale wtedy tylko dla windows) |
|
absflg Temat założony przez niniejszego użytkownika |
» 2011-04-22 19:31:57 Jak duże są różnice między Ncurses a PDcurses?
//EDIT
Rozwiązałem problem związany z polskimi znakami. Konwertując stringi na tablice chtype* można stosować Unicode i stosować funkcję opisane w dokumentacji PDcurses w grupie addchstr.
I mój kod na konwersję wpisanych w program char* na chtype*:
chtype * PL( const char * text ) { chtype * wynik; int rozmiar; for( rozmiar = 0; text[ rozmiar ]; rozmiar++ ); wynik = new chtype[ rozmiar + 1 ]; for( int I = 0; I < rozmiar; I++ ) { switch( text[ I ] ) { case 'ą': wynik[ I ] = 261; break; case 'ć': wynik[ I ] = 263; break; case 'ę': wynik[ I ] = 281; break; case 'ł': wynik[ I ] = 322; break; case 'ń': wynik[ I ] = 324; break; case 'ó': wynik[ I ] = 243; break; case 'ś': wynik[ I ] = 347; break; case 'ź': wynik[ I ] = 379; break; case 'ż': wynik[ I ] = 381; break; case 'Ą': wynik[ I ] = 260; break; case 'Ć': wynik[ I ] = 262; break; case 'Ę': wynik[ I ] = 280; break; case 'Ł': wynik[ I ] = 321; break; case 'Ń': wynik[ I ] = 323; break; case 'Ó': wynik[ I ] = 211; break; case 'Ś': wynik[ I ] = 346; break; case 'Ź': wynik[ I ] = 377; break; case 'Ż': wynik[ I ] = 380; break; default: wynik[ I ] =( int ) text[ I ]; } } wynik[ rozmiar ] = NULL; return wynik; }
|
|
« 1 » |