我已经写了一个类来负责图像按钮的处理:
#include "ImageButton.h"
ImageButton::ImageButton()
{
// main constructor
}
ImageButton::ImageButton(wxWindow* parent, const wxString& buttonPath)
: wxStaticBitmap(parent, wxID_ANY, wxBitmap(buttonPath, wxBITMAP_TYPE_PNG), wxPoint(0, 0), wxDefaultSize)
{
Refresh();
}
ImageButton::~ImageButton()
{
// ...
}
这是非常初级和基础的。但是,我刚刚发现可能无法调整图像的大小(不改变它的尺寸)。
图片是这样的:
我想在这里实现的是告诉 wxStaticBitmap
当时只显示 一个 关闭方形按钮(这样我就可以将鼠标悬停/单击它的事件处理程序)。设置它的大小在这里不起作用,这不是我想要的。
在这种情况下是否可以按特定尺寸裁剪图像?
最佳答案
您可以从中创建两个图像。其中一种方法是使用 wxImage::Resize
(首先复制原始图像)。第二种方法是使用 wxBitmap::GetSubBitmap
(您需要将 wxImage 转换为 wxBitmap - 这可以通过简单的赋值来完成)。这实际上取决于您想要实现的目标以及对您来说更方便的目标。
关于c++ - 显示图像 Sprite 中的特定图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30607375/