2018/03/31

symbolic link privilege not held が出る場合の対処方法 (Windows 10)

Python でシンボリックリンクを作成するには os.symlink() を使用します。 ただ、Windows でこれを普通に実行すると OSError: symbolic link privilege not held が発生してしまいます。

2018/03/08

Linux に wxPython をインストールする方法

2018/03/07

関数プロトタイプ宣言はヘッダファイルとソースファイルのどちらに書くべきか

C言語のコードでは、全ての関数プロトタイプ宣言がヘッダファイルに書いてあったりするものもありますが、 個人的にはヘッダファイルに書くべきものと、ソースファイルに書くべき1ものを明確に区別すべきだと思います。

何をもって区別するのかと言うと、「スコープ」です。 「何を当たり前のことを」と思った方は申し訳ありません。ただ、最近「スコープなんて知らん」と言わんばかりのコードを大量に読むことになってしまいまして。

2018/03/05

wxPython & XRC でパネルを動的追加する方法 with Two Stage Creation

先日書いた wxPython でパネルを動的追加する方法 | 穀風 を Two Stage Creation を使って実装し直しました。

Two Stage Creation については、以下を参考にしてください

作成したサンプルは、前回と同様、ラベルとボタンが一つずつあるだけのシンプルなもので、ボタンをクリックすると自パネルの背景が変わるというお遊びつきです1

2018/03/04

wxPython & XRC で Custom Frame を作る方法3種

@wxPython 4.0.1 (Phoenix)

UI が複雑になってくると、Custom Frame や Custom Panel を作ってコンポーネント化したくなります。 wxPython では wx.Framewx.Panel を継承した class を作ることでこれを実現できますが、どうもコードベースで実装している例が多いようです。

しかし、View は分離しておきたいもの。特に複雑なUIの場合はなおさらです。 そこで、XRC を使って Custom Frame (Panel) を作る方法を調べてみました。

今回は、例として、Button が一つ中央にある Custom Frame を作ってみます1

2018/03/02

wxPython & XRC で "AttributeError: 'Control' object has no attribute" が発生する場合の対処方法

@wxPython 4.0.1

以下のように XRC から wxDatePickerCtrl 等のコンポーネントを生成すると、Control オブジェクトが返ってきてしまうことがあります。

2018/03/01

wxPython & XRC でパネルを動的追加する方法

2018/3/5 追記
より使い勝手の良い方法があったので、そちらの方法で実装しなおしたバージョンを作りました。
[wxPython &XRC でパネルを動的追加する方法 with Two Stage Creation | 穀風](https://kokufu.blogspot.com/2018/03/wxpython-with-two-stage-creation.html)

Add Panel ボタンをクリックすると動的に MyPanel を追加するサンプルを作りました。

MyPanel はラベルとボタンが一つずつあるだけのシンプルなもので、ボタンをクリックすると自パネルの背景が変わるというお遊びつきです1

なお、MyPanelwxPython & XRC で Custom Frame を作る方法2種+α | 穀風 で紹介した方法で XRC から生成しています2

wxPython & XRC で Custom Frame を作る方法2種+α

2018/03/04 追記
よく調べてみたところ、より使い勝手のよい方法が公式に存在したので書き直しました。
[wxPython & XRC で Custom Frame を作る方法3種 | 穀風](https://kokufu.blogspot.com/2018/03/wxpython-xrc-custom-frame-3.html)

@wxPython 4.0.1 (Phoenix)

UI が複雑になってくると、Custom Frame や Custom Panel を作ってコンポーネント化したくなります。 wxPython では wx.Framewx.Panel を継承した class を作ることでこれを実現できますが、どうもコードベースで実装している例が多いようです。

しかし、View は分離しておきたいもの。特に複雑なUIの場合はなおさらです。 そこで、XRC を使って Custom Frame (Panel) を作る方法を調べてみました。

今回は、例として、Button が一つ中央にある Custom Frame を作ってみます1