[SFML, C++] Błąd: "(...)Cannot Create OpenGL context"
Ostatnio zmodyfikowano 2011-07-21 19:27
diego997 Temat założony przez niniejszego użytkownika |
[SFML, C++] Błąd: "(...)Cannot Create OpenGL context" » 2011-07-21 18:59:23 Podczas kompilacji poniższego kodu wyskakuje mi błąd: Failed to get device context of window -- Cannot Create OpenGL context
#include <SFML/Graphics.hpp> #include <iostream> #include <conio.h> using namespace std;
class Monster { sf::Shape Alien; public: void tworzenie(); void wyswietl( sf::RenderWindow Okno ); };
void Monster::tworzenie() { Alien = sf::Shape::Rectangle( 0, 0, 20, 20, sf::Color::Red ); Alien.SetPosition( 100, 100 ); }
void Monster::wyswietl( sf::RenderWindow Okno ) { Okno.Draw( Alien ); }
int main() { sf::RenderWindow Okno( sf::VideoMode( 800, 600, 32 ), "Okno" ); Monster Alien; Alien.tworzenie(); while( Okno.IsOpened() ) { sf::Event Event; while( Okno.GetEvent( Event ) ) { } Okno.Clear( sf::Color::Black ); Alien.wyswietl( & Okno ); Okno.Display(); } }
|
|
akwes |
» 2011-07-21 19:03:28 Alien.wyswietl( & Okno );
Wysyłasz adres, ale nie odbierasz jako wskaźnik. void Monster::wyswietl( sf::RenderWindow * Okno ) { Okno->Draw( Alien ); }
|
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-07-21 19:03:42 Dobra działa argument funkcji zmieniłem na wskaźnik i zamiast Okno.Draw(Alien); wpisałem Okno->Draw(Alien);
I nie wiem czemu teraz działa a wcześniej nie ;p |
|
akwes |
» 2011-07-21 19:05:31 Bez wskaźnika chciałeś odbierać cały obiekt, a nie tylko jego adres. Tak jakbyś zrobił drugie okno, ponieważ bez odbierania jako wskaźnik czy referencja, działamy na kopiach obiektów. Czy jakoś tak... |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-07-21 19:07:48 Początek zrozumiałem, ale musze więcej poczytać o tym ,,this,, |
|
akwes |
» 2011-07-21 19:17:16 ale this :P ? to ma coś tutaj do gadania? To jest wskaźnik klasy na nią samą przecież |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-07-21 19:27:42 No faktycznie teraz mi coś zaświtało przypomniała mi sie symfonia c++ i była tam mowa o tym znaczku -> :D
P.S udało mi się zrobić to co chciałem przy użyciu klas, dzięki za pomoc :) |
|
« 1 » |