本文整理汇总了C++中mygui::Widget::eventMouseButtonClick方法的典型用法代码示例。如果您正苦于以下问题:C++ Widget::eventMouseButtonClick方法的具体用法?C++ Widget::eventMouseButtonClick怎么用?C++ Widget::eventMouseButtonClick使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mygui::Widget
的用法示例。
在下文中一共展示了Widget::eventMouseButtonClick方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: injectKeyPress
void HotkeyManager::injectKeyPress(MyGUI::KeyCode _key, MyGUI::Char _text)
{
/*
被翻译成下面的字符串,不区分大小写
Shift+Ctrl+Alt+X,不区分左右Shift和Ctrl,Alt
*/
Game* g = Game::getSingletonPtr();
if( g )
{
string hotkey;
//_key不能是Shift,Ctrl,Alt其中之一
if( _key == MyGUI::KeyCode::Enum(MyGUI::KeyCode::RightShift) ||
_key == MyGUI::KeyCode::Enum(MyGUI::KeyCode::LeftShift) ||
_key == MyGUI::KeyCode::Enum(MyGUI::KeyCode::RightControl) ||
_key == MyGUI::KeyCode::Enum(MyGUI::KeyCode::LeftControl) ||
_key == MyGUI::KeyCode::Enum(MyGUI::KeyCode::RightAlt) ||
_key == MyGUI::KeyCode::Enum(MyGUI::KeyCode::LeftAlt) )
return;
if( g->getKeyState(MyGUI::KeyCode::Enum(MyGUI::KeyCode::RightShift)) ||
g->getKeyState(MyGUI::KeyCode::Enum(MyGUI::KeyCode::LeftShift))
)
{
hotkey += "shift+";
}
if( g->getKeyState(MyGUI::KeyCode::Enum(MyGUI::KeyCode::RightControl)) ||
g->getKeyState(MyGUI::KeyCode::Enum(MyGUI::KeyCode::LeftControl))
)
{
hotkey += "ctrl+";
}
if( g->getKeyState(MyGUI::KeyCode::Enum(MyGUI::KeyCode::RightAlt)) ||
g->getKeyState(MyGUI::KeyCode::Enum(MyGUI::KeyCode::LeftAlt))
)
{
hotkey += "alt+";
}
//注意:正确的话,ScanCodeToText返回小写字传串
hotkey += ScanCodeToText(_key.getValue());
for( HotkeyTable::iterator it = mHotkeys.begin();it!=mHotkeys.end();++it )
{
if( it->mSHotkey == hotkey )
{
MyGUI::Widget* p = MyGUI::Gui::getInstance().findWidget<MyGUI::Widget>(it->mName,false);
if( p )
p->eventMouseButtonClick( p );
}
}
}
}