User forums > General (but related to Code::Blocks)
Error at image creating
(1/1)
Tomi:
Hello!
I'm using wxWidgets 3.0.x with wxSmith and I would like show images on the screen.
I wrote this code for this:
--- Code: ---class SpaceShip {
public:
SpaceShip (int xh, int yh) {
xplace = xh;
yplace = yh;
};
int xplace, yplace;
wxBitmap itsimage=wxImage(_T("C:\\Users\\Tomi\\Desktop\\spaceship.png")); //Warning: Unknown image data format
};
SpaceShip* spship=new SpaceShip(200,200); //If I comment out this line, everything is OK, because nothing call the class above. Maybe am'I create this on wrong place?
class BlueDot {
public:
BlueDot(int xh, int yh) {
xplace = xh;
yplace = yh;
};
int xplace, yplace;
wxBitmap itsimage=wxImage(_T("C:\\Users\\Tomi\\Desktop\\bluedot.png")); //Here works well...
};
std::vector<BlueDot> bluedots;
--- End code ---
Then I paint the instances of these classes:
--- Code: ---void wxw30testprogFrame::OnPaint(wxPaintEvent& event)
{
wxPaintDC dc(this);
wxBitmap bitmap(spship->itsimage);
dc.DrawBitmap(bitmap, spship->xplace,spship->yplace, false);
for (int i=0; i<bluedots.size(); i++) {
wxPaintDC dc(this);
wxBitmap bitmap(bluedots[i].itsimage);
dc.DrawBitmap(bitmap, bluedots[i].xplace,bluedots[i].yplace, false);
};
}
--- End code ---
At the spaceship.png I get an error message from its unknown image data format. But this method at BlueDot class works well. What is wrong?
Miguel Gimenez:
Did you call wxInitAllImageHandlers()?
This is OT here, next time you should ask in the wxWidgets' forum.
Tomi:
Yes, I tried with wxInitAllImageHandlers(), but the problem is the same.
I think, the problem really is not with the image format, but I create the instance of the SpaceShip on wrong place - then, where is the good declaration place of it in the code?
P.S.: sorry if this is an offtopic... :-[
Miguel Gimenez:
Programmng issues are OT here, sorry.
Navigation
[0] Message Index
Go to full version