拖放,未收到wxEVT_DROP_FILES事件

时间:2016-09-28 14:58:24

标签: c++ wxwidgets

使用wxWidgets wxWidgets-3.0.2和MSVC 2012(使用2008构建)

我尝试在wxListView控件上添加文件拖放事件。当我在控件上拖动文件时,我可以看到图标更改,但是当它被释放时没有任何反应,我的事件处理函数永远不会被调用。

代码:

m_listAllStrings = new wxListView(this, ID_LV_ALLSTRINGS);
m_listAllStrings->DragAcceptFiles(true);
m_listAllStrings->Bind(wxEVT_DROP_FILES, &MainFrame::OnDropFiles, this);
// also tried these
// m_listAllStrings->Connect(wxEVT_DROP_FILES, wxDropFilesEventHandler(MainFrame::OnDropFiles), NULL, this);
// Connect(wxEVT_DROP_FILES, wxDropFilesEventHandler(MainFrame::OnDropFiles)); 

// even handler function
void MainFrame::OnDropFiles(wxDropFilesEvent& event)
{
    // I put breakpoint here, it never enters
    if(event.GetNumberOfFiles() > 0)
    {
         // ...
    }
}

我也尝试在按钮上执行此操作,虽然单击事件处理有效,但它无法正常工作:

 Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(MainFrame::OnBtClick));

0 个答案:

没有答案