1aam2am1 |
» 2014-08-12 17:40:01 Jeden początek c++. Drugi tablice tab[3]. Ma 3 elementy poczynając od 0: 0, 1, 2. Trzeci początki matematyki w podstawówce dotyczące mniejszy < większy, większy > mniejszy. Czwarty poco dziedziczysz sf::Text i sf::Font? Piąty używaj funkcji debuguj!!!
|
|
Parapet Temat założony przez niniejszego użytkownika |
» 2014-08-12 18:23:17 #include <SFML/Graphics.hpp> class menu : private sf::Font , public sf::Text { private: Font font; public: Text text[ 4 ]; void changeText( std::string a, std::string b, std::string c, std::string d ) { text[ 0 ].setString( a ); text[ 1 ].setString( b ); text[ 2 ].setString( c ); text[ 3 ].setString( d ); } void changePosition( float x, float y ) { text[ 0 ].setPosition( x, y ); text[ 1 ].setPosition( x, y - 20 ); text[ 2 ].setPosition( x, y - 40 ); text[ 3 ].setPosition( x, y - 60 ); } bool changeFont() { if( !font.loadFromFile( "mariofont.ttf" ) ) return EXIT_FAILURE; int c; for( c = 0; c < 4; c++ ) { text[ c ].setFont( font ); } } void changeColor( sf::Color color ) { int c; for( c = 0; c < 4; c++ ) { text[ c ].setColor( color ); } } void draw( sf::RenderWindow window ) { window.clear( sf::Color::White ); window.display(); window.draw( text[ 0 ] ); window.draw( text[ 1 ] ); window.draw( text[ 2 ] ); window.draw( text[ 3 ] ); } }; int main() { menu gui; sf::RenderWindow okno( sf::VideoMode( 1000, 1000, 32 ), "Menu - TEST GUI" ); gui.changeText( "New game", "Options", "Info", "Exit" ); sf::Event ev; while( okno.isOpen() ) { while( okno.pollEvent( ev ) ) { if( ev.type == sf::Event::Closed ) okno.close(); } okno.clear( sf::Color::White ); okno.draw( gui.text[ 0 ] ); okno.draw( gui.text[ 1 ] ); okno.draw( gui.text[ 2 ] ); okno.draw( gui.text[ 3 ] ); okno.display(); } }
Nic się nie wyświetla. Output po kompilacji: 1>------ Build started: Project: Trebuh Adventure, Configuration: Debug Win32 ------ 1> Skipping... (no relevant changes detected) 1> code.cpp ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
Co do moich błędów zbyt dużo pisałem w C# ;p |
|
1aam2am1 |
» 2014-08-12 18:33:32 Nie ustawiłeś koloru i dlaczego czyścisz ekran na biało? |
|
Jacob99 |
» 2014-08-12 18:38:55 @1aam2am1 A dlaczego ma czyścić na czarno? |
|
Parapet Temat założony przez niniejszego użytkownika |
» 2014-08-12 18:43:44 Okej działa - zamykam. Edit: void draw( sf::RenderWindow window ) { window.clear( sf::Color::White ); window.display(); window.draw( text[ 0 ] ); window.draw( text[ 1 ] ); window.draw( text[ 2 ] ); window.draw( text[ 3 ] ); }
czemu ta funkcja nie działa? |
|
unkn9wn |
» 2014-08-12 19:01:18 1. czyścisz 2. wyświetlasz na ekran 3. rysujesz do bufora |
|
Parapet Temat założony przez niniejszego użytkownika |
» 2014-08-12 19:23:21 tzn. ? void changeColor( sf::Color color ) { text[ 0 ].setColor( color ); text[ 1 ].setColor( color ); text[ 2 ].setColor( color ); text[ 3 ].setColor( color ); }
Jeszcze ten fragment nie działa, czemu? |
|
Glazus |
» 2014-08-12 19:32:03 Spróbuję prościej: 1. Czyścisz scenę. 2. Wyświetlasz scenę. 3. Dodajesz do sceny elementy. I od początku: 1. Czyścisz, 2. wyświetlasz, 3. dodajesz elementy. Teraz wiesz? Co do moich błędów zbyt dużo pisałem w C# ;p |
W żaden sposób C# nie tłumaczy błędów które popełniasz. |
|
1 « 2 » 3 |