0

我正在使用 C++ 在 Windows 平台中使用 wxWidgets 构建 UI。我在功能区中有一个切换按钮。我按如下方式初始化按钮:

m_cell_bar->AddToggleButton(RIBBON_CELLSELECTMODE, wxT("Cell Select"), wxBitmap(selectcell_xpm), wxEmptyString);

为了实现使用切换按钮的目的,我需要从 unchecked->checked 和 checked->unchecked 事件中分配不同的事件。如果它是一个普通的切换按钮,我会使用:

buttonid->GetValue()

但它不是.. 那么我怎样才能达到这个状态呢?

谢谢...

4

1 回答 1

0

看起来他们没有提供一种方法来获取按钮的选中状态(我正在使用 2.9.2)。但是看起来您可以使用这样的代码来获取它(我没有尝试过,只是查看了 wx 代码):

wxRibbonButtonBarButtonBase* button = m_cell_bar->AddToggleButton(RIBBON_CELLSELECTMODE, wxT("Cell Select"), wxBitmap(selectcell_xpm), wxEmptyString);
// Store the "button" pointer for use later
// ...
// Sometime later
if((button->state & wxRIBBON_BUTTONBAR_BUTTON_TOGGLED) == 0)
{
    // Not checked
}
else
{
    // Checked
}
于 2012-05-01T14:20:24.967 回答