【问题标题】:mouse wheel event scroll c++ Visual Studio鼠标滚轮事件滚动 c++ Visual Studio
【发布时间】:2018-08-22 08:41:26
【问题描述】:

我正在用 windowForms 制作一个程序,我想用鼠标滚轮做一些事情,比如用鼠标滚轮改变图像。我一直在微软网站上寻找一些答案,但我无法理解。谁能给我一个关于鼠标滚轮事件以及我需要使用哪些库的示例。

【问题讨论】:

  • 如果你打算使用winforms,我认为你想要c++-cli而不是c++

标签: winforms visual-studio events c++-cli mousewheel


【解决方案1】:

这是我需要使用的库

'#' 使用''

'#' 使用''

'#' 使用''

public ref class mainWindow : public System::Windows::Forms::Form

{

公开:

    mainWindow(void)

    {

         InitializeComponent();

       //

        //TODO: Add the constructor code here

       //
    }  

//在 InitializeComponent() 里面我写道:

       this->panel_album_info->MouseEnter += gcnew System::EventHandler(this,&mainWindow::panel_album_info_MouseEnter);



        this->panel_album_info->MouseWheel += gcnew System::Windows::Forms::MouseEventHandler(this, &mainWindow::panel_album_info_Mouse_Wheel);

每个函数的代码

 private: System::Void panel_album_info_Mouse_Wheel(System::Object^  sender, System::Windows::Forms::MouseEventArgs^  e) {
//if (tenho_o_rato_no_panel_do_album_info == true)
//{
    int movimento = e->Delta;
    label1->Text = "teste";

    if (movimento == 120)

        numero_de_deslocações_do_album += 1;
    else if (movimento == -120)
        numero_de_deslocações_do_album -= 1;
    label1->Text = numero_de_deslocações_do_album.ToString();
//}
//else
    //return;

 }


private: System::Void panel_album_info_MouseEnter(System::Object^  sender, System::EventArgs^  e) {


this->panel_album_info->Select(); //este tambem da mas nao sei qual é a diferença
//this->panel_album_info->Focus();

}

该代码允许在不单击的情况下滚动某些内容。我想要确定范围的组件位于面板对象内,因此我需要先聚焦/选择面板对象。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-27
    • 1970-01-01
    相关资源
    最近更新 更多