凛(kagring)のUE4とUnityとQt勉強中ブログ

2016 年から UE4 を触り始めました。勉強したもののメモ用のブログです。C++ での Qt、Unity も少しあります。

PREV | PAGE-SELECT | NEXT

≫ EDIT

C++ Qt Widget 上でのキーボード操作

QListBox などの Widget 上で、キーボードが推された場合の処理です。
簡単に考えるとコールバック系があるのかなと思ったのですが、
どうも Widget を継承したクラスで、関数をオーバーライドしてあげる必要があるみたいです。

・EmacsライクなWidgetを作ろう on Qt
http://blog.goo.ne.jp/hiroyuki_kiitos

ここを参考にこんな感じに。

// 継承したクラスでキーを受け取り
class CListWidget : public QListWidget {
protected:
//! キーイベント
virtual void keyPressEvent( QKeyEvent *event )
{
switch( event->key() ){
case Qt::Key_Delete:
break;
default:
break;
}
}
}


こんな感じでオーバーライドしてあげることで、
そのウィジェットでキーが押されたときの処理を実行することができます。
この他にもキーが離されたときや、マウス操作関係もあるようです。

Qt 自体、Widget を継承してカスタマイズして作っていくのが基本のようですね。
スポンサーサイト

| Qt | 03:18 | comments:0 | trackbacks:0 | TOP↑

COMMENT















非公開コメント

TRACKBACK URL

http://kagring.blog.fc2.com/tb.php/105-6a94a82f

TRACKBACK

PREV | PAGE-SELECT | NEXT