如何在wxWidgets框架中添加图片?
How to add picture in wxWidget's frame?
我是wxWidget 的新手。我想创建一个显示一些文本和图片的框架。我曾尝试搜索 internet/wsWidget 帮助,但找不到解决方案。我知道有一些图像处理程序,例如 wxPNGHandler();但我不知道如何使用它。任何显示图像的简单代码都会非常有用。
class MyFrame : public wxFrame
{
public:
MyFrame();
}
MyFrame :: MyFrame() : wxFrame( NULL, wxID_ANY, wxT( "My wxWidget" ), wxDefaultPosition, wxSize( 290, 180 ), wxCAPTION | wxCLOSE_BOX)
{
wxPanel *panel = new wxPanel(this, wxID_ANY);
wxString text = wxT("Text Display\n");
//Add image to display
}
试试这个。
//创建一个临时的(堆栈分配的)wxPaintDC对象
wxPaintDC paintDC(这个);
//绘制背景图
paintDC.DrawBitmap(wxBitmap(wxImage("image.png")),0,0);
试了一天,这个终于成功了。
wxPNGHandler *handler = new wxPNGHandler;
wxImage::AddHandler(handler);
wxStaticBitmap *image;
image = new wxStaticBitmap( this, wxID_ANY, wxBitmap("Windows_7_logo.png", wxBITMAP_TYPE_PNG), wxPoint(50,100), wxSize(100, 500));
您已经找到 wxStaticBitmap
,但下次您有问题时,我的建议是在 wxWidgets samples 中搜索。例如,在示例目录下的所有 *.cpp
文件中搜索 png
会找到 samples/widgets/statbmp.cpp
,这将为您提供要使用的控件的名称。
我是wxWidget 的新手。我想创建一个显示一些文本和图片的框架。我曾尝试搜索 internet/wsWidget 帮助,但找不到解决方案。我知道有一些图像处理程序,例如 wxPNGHandler();但我不知道如何使用它。任何显示图像的简单代码都会非常有用。
class MyFrame : public wxFrame
{
public:
MyFrame();
}
MyFrame :: MyFrame() : wxFrame( NULL, wxID_ANY, wxT( "My wxWidget" ), wxDefaultPosition, wxSize( 290, 180 ), wxCAPTION | wxCLOSE_BOX)
{
wxPanel *panel = new wxPanel(this, wxID_ANY);
wxString text = wxT("Text Display\n");
//Add image to display
}
试试这个。
//创建一个临时的(堆栈分配的)wxPaintDC对象 wxPaintDC paintDC(这个);
//绘制背景图 paintDC.DrawBitmap(wxBitmap(wxImage("image.png")),0,0);
试了一天,这个终于成功了。
wxPNGHandler *handler = new wxPNGHandler;
wxImage::AddHandler(handler);
wxStaticBitmap *image;
image = new wxStaticBitmap( this, wxID_ANY, wxBitmap("Windows_7_logo.png", wxBITMAP_TYPE_PNG), wxPoint(50,100), wxSize(100, 500));
您已经找到 wxStaticBitmap
,但下次您有问题时,我的建议是在 wxWidgets samples 中搜索。例如,在示例目录下的所有 *.cpp
文件中搜索 png
会找到 samples/widgets/statbmp.cpp
,这将为您提供要使用的控件的名称。