我制作了一个 wxPerl 应用程序,它只显示了一个简单的框架,它只包含一个 wxMenuBar、wxPanel、wxTextCtrl 和一个 wxStaticBitmap。开发和部署平台是 Windows XP 及更高版本。
图像被添加到表单中,如下所示:
my $logoData = Wx::Bitmap->new(App::Resource::Images::getLogoPath(), wxBITMAP_TYPE_BMP);
my $logo = Wx::StaticBitmap->new($self, -1, $logoData);
我在显示图像时没有问题。我用 Inno Setup 制作了一个安装程序,它在用户的桌面上添加了一个图标。如果应用程序使用该快捷方式启动,则窗口不会绘制我的 wxStaticBitmap。只有当应用程序失去焦点并且其他一些窗口被移动到它上面时,我的 wxStaticBitmap 才会被绘制。
从开始菜单启动应用程序时,快速启动,或者直接用 wxpar 编译它,或者只是用 perl 解释器显示我的 wxStaticBitmap 很好。
我发现的唯一一件事就是在我的 wxFrame 上调用Refresh()
和。Update()
在创建这个 wxFrame 之后,我调用Show(1)
and 之后Refresh()
和Update()
. 但到目前为止还没有运气。