大阪市中央区 システムソフトウェア開発会社

営業時間:平日09:15〜18:15
MENU

Raspberry Pi 3でのGUI Kivy, wxPython, Code::Blocks

株式会社クローバーフィールドの経営理念
著者:津路高広
公開日:2018/07/16
最終更新日:2018/07/16
カテゴリー:技術情報
タグ:

津路です。

Kivy
Kivyにて、ファイルを開く、新規作成、保存できるエディタを作ってみました。
ディレクトリやファイルを参照するには、filechoosericonviewかfilechooserlistviewを選択します。ディレクトリだけというfilterも使えます。


ただ、使ってみた限りでは、上のディレクトリへ移動するのに、1クリックで2階層移動してしまいました。
それ以外は、正常です。

wxPython
wxPythonでもエディタを作ってみました。

こちらは、Kivyのようにレイアウトを分離しなくてよく、wxライブラリを使う点で、プログラムを把握しやすいです。
エディタの構成:TextCtrlを真ん中に、StatusBarを作成し、MenuにMenuBarを追加して、ファイルオープン、保存、終了などの項目を追加します。各項目起動には、wx.EVT_MENUに関数をBindします。ファイル選択には、FileDialogを使います。

Code::Blocks
wxSmithを連携させて使ってみました。
Code::Blocks 13.12です。wxSmithは、0.1という古めかしいバージョンです。
wxSmithを利用するには、codeblocks-contribをインストールします。
インストールすると、spellcheckerのdictionaryをインストールを要求されます。
おすすめは、myspellだそうです。パッケージ管理アプリから、myspellを選択しました。
Code::Blocksを再起動して、hunspellが認識されましたので、ディレクトリを/usr/share/myspell/dictに変更し、online spell checkerをonにしました。
ここで、新規プロジェクトを作成、wxSmithを選択すると、簡単にテンプレートから作成されました。wxsファイルが作成され、メッセージとボタン2個が配置されています。
が、実行するとエラーが発生。

../src/common/sizer.cpp(2091):assert “!(flags &(wxALIGN_RIGHT|wxALIGN_CENTRE_HORIZONTAL))” failed in DoInsert(): Horizontal alignment flags are ignored with wxEXPAND
このエラーは、不要なLine要素の追加コードをコメントしてOKでした。

    上に戻る