1

私は Windows フォーム プログラムを開発していますが、C++ でこれを行う方法を見つけるのに苦労しています。MSDN にはhttp://msdn.microsoft.com/en-us/library/system.windows.forms.picturebox.imageというページがありますが、VB に比べて C++ のドキュメントが不足しています。

これは私がこれまでに持っているものです。この方法は、一般的なちらつきの問題を回避することになっていますが、マウスが離れた後に元の画像に戻る必要があるため、そこからどこに行くべきかわかりません。

void InitializeComponent(void)
    {   
this->btnExit->BackColor = System::Drawing::Color::Transparent;
        this->btnExit->BackgroundImageLayout = System::Windows::Forms::ImageLayout::None;
        this->btnExit->Image = (cli::safe_cast<System::Drawing::Image^  >(resources->GetObject(L"btnExit.Image")));
        this->btnExit->Location = System::Drawing::Point(764, 4);
        this->btnExit->Name = L"btnExit";
        this->btnExit->Size = System::Drawing::Size(30, 20);
        this->btnExit->TabIndex = 3;
        this->btnExit->TabStop = false;
        this->btnExit->Click += gcnew System::EventHandler(this, &mainForm::btnExit_Click);
}

#pragma endregion
private: System::Void btnExit_OnMouseEnter(System::Object^  sender, System::EventArgs^  e) {
            Image^ get ();
            void set (Image^ value);
         }

ありがとう。

4

1 に答える 1

0
private: System::Void btnExit_MouseEnter(System::Object^  sender, System::EventArgs^  e) {
         btnExit->Image = Image::FromFile("C:\\Users\\...\\image.png");
 }

動作しますが、それが適切な方法であるかどうかはわかりません。

于 2013-04-04T21:00:18.437 に答える