我的应用程序在框架中嵌入了两个图片。我的代码如下:
wxMemoryInputStream istream1(Bild_png, sizeof Bild_png);
wxImage Bild_png(istream1, wxBITMAP_TYPE_PNG);
new wxStaticBitmap(p_img, wxID_ANY, wxBitmap(Bild_png));
vbox->Add(p_img ,0);
(vbox是Sizer)
当我启动应用程序时,我是一个" T - "位于两个位图的左上角。当我更改notebookitem("screen")
并返回到第一个屏幕(位图所在的位置)时," -T"已经消失了......
如何修复它,以便我永远不会看到失败?
答案 0 :(得分:0)
Haven之前有人建议您搜索samples?例如widgets;只是grep wxStaticBitmap
,我确定你会找到有用的东西。
这只是提问的一种不好的方式。
在您的c ++代码段中,即使在宣布之前您还在使用Bild_png
- 真的吗?然后你提到both Bitmaps
和notebookitem("screen")
这些只是除了你以外的任何其他人都不知道的项目。
国际海事组织收到一个好的答案太错了......
答案 1 :(得分:-1)
我必须在最高级别的sizer上调用Layout()。这解决了我的问题。这意味着最后:
vbox->Layout()
@catalin,我不认为发布aorund 2000行的源代码是一种更好的方法。我选择了这个小小的剪辑,因为它说明了所有需要的内容。 wxWidgets的一位专家给了我 - 用这四行 - 暗示了sizer的某些错误,而不是pic。