Я пытаюсь создать статическое растровое изображение, но конструктор принимает только wxGDIImages.
Вот код из FormBuilder:
wxStaticBitmap* tmtBitmap = new wxStaticBitmap( this, wxID_ANY, wxBitmap( wxT("directory"), wxBITMAP_TYPE_ANY ), wxDefaultPosition, wxDefaultSize, 0 );
Есть ли способ конвертировать wxBitmap в wxGDIImage? Или создать wxGDIImage с учетом каталога?
Может быть, есть другой способ сделать это.
Благодарю.
wxStaticBitmap
принимает wxBitmap
в своем конструкторе (wx API-Doc)
Сообщение об ошибке, выдаваемое компилятором, может вводить в заблуждение
Я предполагаю, что вы видите что-то вроде этого:
include/wx/msw/statbmp.h:80: note: candidates are: wxStaticBitmap::wxStaticBitmap(const wxStaticBitmap&)
include/wx/msw/statbmp.h:34: note: wxStaticBitmap::wxStaticBitmap(wxWindow*, wxWindowID, const wxGDIImage&, const wxPoint&, const wxSize&, long int, const wxString&)
include/wx/msw/statbmp.h:25: note: wxStaticBitmap::wxStaticBitmap()
Поскольку это зависит только от контекста, кажется, что проблема с вашим this
указатель, либо вы не «внутри» wxWindow
или ваш компилятор не может определить статический тип. Вы можете использовать что-то вроде этого для проверки: (не делайте этого в производительном коде)
wxStaticBitmap* tmtBitmap = new wxStaticBitmap( (wxWindow*)NULL, wxID_ANY, wxBitmap( wxT("directory"), wxBITMAP_TYPE_ANY ), wxDefaultPosition, wxDefaultSize, 0 );
или же
wxStaticBitmap* tmtBitmap = new wxStaticBitmap( (wxWindow*)this, wxID_ANY, wxBitmap( wxT("directory"), wxBITMAP_TYPE_ANY ), wxDefaultPosition, wxDefaultSize, 0 );
Других решений пока нет …