Изменить фоновое изображение кнопки программно в Visual C ++ - PullRequest
0 голосов
/ 04 сентября 2018

Существует так мало учебников, когда речь идет о Visual C ++, и я не могу найти ответы на мою проблему, которая проста для других поддерживаемых .net языков, таких как C # и VB.

У меня есть простой пользовательский интерфейс, созданный с помощью Visual C ++, скомпилированный с помощью CLR. У меня есть кнопка с фоновым изображением, установленным в свойствах, но я не знаю, как изменить фоновое изображение при нажатии кнопки или наведении мыши.

Мои изображения были расположены в каталоге / asset.

И так как я не могу найти ответы для c ++, я не могу показать здесь фрагмент кода.

Надеюсь, кто-нибудь поможет. Спасибо.

1 Ответ

0 голосов
/ 04 сентября 2018

После часа исследований я наконец решил свои проблемы:

internal:
        ImageList ^ ImageList1;

private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) {
        ImageList1 = gcnew ImageList;
        ImageList1->ImageSize = System::Drawing::Size(200, 200);
        ImageList1->Images->Add(Image::FromFile("..\\assets\\button_round_red\\button_round_red_selected.png"));
        button2->BackgroundImage = ImageList1->Images[0];
        button2->BackgroundImageLayout = ImageLayout::Center;
        button2->Size = button2->BackgroundImage->Size;
    }
...