2018/03/05

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

先日書いた [wxPython でパネルを動的追加する方法 | 穀風](https://kokufu.blogspot.com/2018/03/wxpython.html) を Two Stage Creation を使って実装し直しました。

> Two Stage Creation については、以下を参考にしてください
>
> - [wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.0.1 documentation](https://docs.wxpython.org/MigrationGuide.html#phase-create)
> - [XRC and two stage creation in Phoenix - Google グループ](https://groups.google.com/forum/#!topic/wxpython-users/KNCAAYJKpQU)
> - [Phoenix compatibility in pywxrc by acolomb · Pull Request #726 · wxWidgets/Phoenix](https://github.com/wxWidgets/Phoenix/pull/726/files)
> - [wxPython & XRC で Custom Frame を作る方法3種 | 穀風](https://kokufu.blogspot.com/2018/03/wxpython-xrc-custom-frame-3.html)

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

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

@wxPython 4.0.1 (Phoenix)

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

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

今回は、例として、Button が一つ中央にある Custom Frame を作ってみます例が全く複雑なUIじゃない!
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` はラベルとボタンが一つずつあるだけのシンプルなもので、ボタンをクリックすると自パネルの背景が変わるというお遊びつきです全く役に立たない!
なお、`MyPanel` は [wxPython & XRC で Custom Frame を作る方法2種+α | 穀風](https://kokufu.blogspot.com/2018/03/wxpython-xrc-custom-frame-2.html) で紹介した方法で XRC から生成していますFrame も XRC から作れますが、今回は Panel が主役なのであえてコードで生成

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.Frame` や `wx.Panel` を継承した class を作ることでこれを実現できますが、どうもコードベースで実装している例が多いようです。 しかし、View は分離しておきたいもの。特に複雑なUIの場合はなおさらです。 そこで、[XRC](https://wiki.wxpython.org/XRCTutorial) を使って Custom Frame (Panel) を作る方法を調べてみました。 今回は、例として、Button が一つ中央にある Custom Frame を作ってみます例が全く複雑なUIじゃない!