*

QtでRaspberryPi/GUI開発(4):イベントハンドラの設定

公開日: : C++, C言語, Qt, RaspberryPi, 開発

どもです。
前回のエントリーで、「タッチスクリーンを買った」と書きました。
今回からは、このタッチスクリーンを使用たQtアプリケーションの開発に向けて、エントリーを作成していきます。
(と言いつつも、タイトルには「(4)」の文字…。ぷっ!)

1.イベントハンドラ
「イベントハンドラ」は、ボタンが押されたりした際に呼び出される関数です。
そのため、「GUIの部品」(Widget)に「どのような処理」が行われたら(イベント)、「どの関数(イベントハンドラ)を呼び出すか」を指定する必要があります。
Qtでは、これは下記のようにして指定します。

日本語で書くと長くなるので、ボタンの押下に対する実装例を書いてみます。
ココでは、objectNameが”sampleButton”というボタンをクリックした際に、onSampleButtonClicked()という処理が呼び出される実装を例にします。

なお、イベントハンドラ(上記例での、onSampleButtonClicked())の宣言についてはルールがあります。
即ち、アクセス修飾子に「slots」を追記して、そのセクションが「SLOT」の宣言であることを明記する必要があります。
具体的には、下記の通りです。

2.イベントハンドラを簡単に
Qtでイベントハンドラを実装する際、設定しなければならないイベントハンドラが少なければよいのですが、数が多くなった場合、1つ1つに対して上記のようなconnect()呼び出しを実装するのは手間です。
しかし、Qtにはそれを回避する実装方法が提供されています。
下記に示すフォーマット(?)で関数を宣言することで、Qtが自動でWidgetとイベントハンドラを紐付けてくれます。

なお、宣言については、アクセス修飾子に「slots」が付加された範囲に記載する必要があります。

以上、今回はイベントハンドラの実装について記載しました。
次回は、何とかタッチスクリーンを表示できるものを!!

ではっ!

関連記事

no image

C言語でEV3開発(9)-opOUTPUT_SPEEDコマンド

どもです。 今回のエントリーでは、前回に引き続きEV3のモーターを動かしていきます。 ただし、単

記事を読む

no image

C言語でEV3開発(17)-コマンドによるTOPPERS/HRP2 EV3RT アプリケーションの制御(コントロール)

どもです。 今回は、TOPPERS/HRP2 EV3RT で作成したアプリをPC上から操作するため

記事を読む

OpenCvLogo

OpenCvによる画像サイズ変更

どもです。 最近、カメラの動画をOpenCvで加工する、ということに挑戦し始めました。 しか

記事を読む

toppers

C言語でEV3開発(20)-超音波センサと安全状態

どもです。 前回は、BluetoothでPCとEv3を接続してコマンドの送受信について書きました。

記事を読む

Qt_logo_2016

QtでRaspberryPi/GUI開発(2):ためしに時計を作ってみた(其の弐)

どもです。 前回のエントリーでは、ラジオボタンのグループ化と、選択されたボタンの特定方法まで記載し

記事を読む

python

VisualStudioCommunityでのPython開発環境構築

どもです。 最近、VisualStudioでのPython開発を始めました。 その際の環境構築に

記事を読む

toppers

C言語でEV3開発(27)-EV3にヒステリシス処理を実装してみた

どもです。 今回は、モーターから読み出した値に対するヒステリシス・フィルター処理です。 0.

記事を読む

eclipse_4.3_kepler

elicpse/CDTでのgdbでのソースを追従したデバッグができない問題

どもです。 今回のエントリーは、Eclipse上でgdbを利用したデバッグ中に発生する問題について

記事を読む

RasPi_Qt

QtでRaspberryPi/GUI開発(5):pigpioを使ってみた

どもです。 RaspberryPiを購入して、LEDも手に入れたのでコレをチカらせてみようと思いま

記事を読む

raspberry-pi

RaspberryPiで物体検出(2)-白線検出への挑戦(2):輪郭検出による白線検出(実機編)

どもです。 今回は、前回に引き続きOpenCvを用いて道路の白線検出について、です。 1.今

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

RasPi_Qt
QtでRaspberryPi/GUI開発(6):pigpioを使用したチャタリング対策

どもです。 前回のエントリーで、pigpioを使用したボタンを使用し

RasPi_Qt
QtでRaspberryPi/GUI開発(5):pigpioを使ってみた

どもです。 RaspberryPiを購入して、LEDも手に入れたので

RasPi_Qt
QtでRaspberryPi/GUI開発(4):イベントハンドラの設定

どもです。 前回のエントリーで、「タッチスクリーンを買った」と書きま

raspberry-pi
RaspberryPi3対応のタッチスクリーンを買いました

どもです。 ついに、念願のRaspberryPi3対応のタッチスクリ

no image
QtでRaspberryPi/GUI開発(3):ためしに時計を作ってみた(其の参)-StyleSheetの適用

どもです。 前回のエントリーでは、グループ化されたボタンに対するイベ

→もっと見る

PAGE TOP ↑