ロボット、千葉ロッテマリーンズについていいかげんなことを書きます。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
今回はPyQtで作ったGUIをRTコンポーネント化します。
ソースは長いのでPyQtのサンプルを置くページからPyQt-SAMPLE4.zipをダウンロードしてください。
PyQt-SAMPLE4.pywがサンプルプログラムです。
ボタン1を押したら[1, 0]、ボタン2を押したら[0,1]を出力するTimedLongSeqの型のアウトポートを持ってます。
作り方としては、
まあ、こんなところ。
今回の開発環境は、OpenRTM-aist-Python-1.0.0-RC1です。
0.4.2では動作しません。
次回は本格的に使えそうなコンポーネントを作成します。
何作ろうかな。
とりあえず動作確認コンポーネントをつくります。
デザインは現在思考中。
多分次の更新は3日以上先になると思います。
にほんブログ村の
Pythonのカテゴリ
現在参加人数1人・・・
ソースは長いのでPyQtのサンプルを置くページからPyQt-SAMPLE4.zipをダウンロードしてください。
PyQt-SAMPLE4.pywがサンプルプログラムです。
ボタン1を押したら[1, 0]、ボタン2を押したら[0,1]を出力するTimedLongSeqの型のアウトポートを持ってます。
作り方としては、
- RTCBuilderでTimedLongSeqのアウトポートを持つコンポーネントを作成
- from PyQt4 import QtCore, QtGui のようにPyQtをインポート
- サンプルの OUT=[0,0] のように関数の外に変数を作成
- OnButton1 のようにOUT[0]の値を変える関数をダイアログのクラスに定義
- self.button1.clicked.connect(self.OnButton1) のように button1 が押されたら OnButton1 を実行するようにする
- onExcute で self._d_button.data = OUT、self._buttonOut.write() のようにOUTを出力する
- OUTが変化したときのみ出力するようにする。
- main内で app = QtGui.QApplication(sys.argv)、dialog = Dialog()、sys.exit(dialog.exec_()) と記述
- mgr.runManager(True) ←ここ重要
まあ、こんなところ。
今回の開発環境は、OpenRTM-aist-Python-1.0.0-RC1です。
0.4.2では動作しません。
次回は本格的に使えそうなコンポーネントを作成します。
何作ろうかな。
とりあえず動作確認コンポーネントをつくります。
デザインは現在思考中。
多分次の更新は3日以上先になると思います。
にほんブログ村の
Pythonのカテゴリ
現在参加人数1人・・・
PR
この記事にコメントする