pythonでfoobarのalternativeを作る 18 190527 version 5
:追加された部分
:削除された部分
(差分が大きい場合、文字単位では表示しません)
pythonでfoobarのalternativeを作る 18 190527
## インクリメンタルサーチ
- 情報少ないよなあ
プランとしては
①tree描画を止める
②tree操作を止める
①を昨日調べたけどわからなかった
eventfilterを使うか、treectrlをサブクラス化してpaintをオーバーライドするか
既存コントロールのサブクラス化はUIの書き方が面倒なのでまだやってない
eventfilterが簡単そうだったんだけどできない(-_-)
exampleも出てこないんだよなあ・・・
②は可能なのかな???出来ないわけがないような気もするけど・・
- そもそもwxpythonのtreectrlの挙動は、DATAが3万件として
・全表示は数秒後に一気
・全削除は数秒かけてスクロールバーが伸びていくのがわかる
データ追加中は再描画しないが、削除中はするって事か?
削除の仕方を考え直せば良いんだろうか
Qtのコントロールはデータ追加と表示が別れてるから、現在データを表示させながら別のデータを作っておいて、ビューにセットするデータを一気に差し替える、みたいなことが出来そうな気がするんだけど。
wxも基本は同じだと思うんだが違うのかな??
treeの部分だけでもQTで書いてみるか???
- プランは
・treeクリア前にデータを作る
・追加で文字の入力があればデータ作成を中止して、またデータ作成を始める
・データが出来たらtreeのデータを差し替え
・これはスレッドでやる、そのために別クラスにする
```
class maketree():
def init(): # 実行フラグを1にしておく
self.fkag=1
def flag(flag): # 中止フラグ
self.flag=flag
def make(tree,line): # 親のtreeとSQL文
# SQLの実行とデータのtreeへのセット
# 常にflagを確認して作業する、途中で0に変わってたら終了すること
# treeクリアのタイミングは???
```
- 別スレッドにしたクラスのフラグをいじるときっどうすんのかな?
インクリメンタルサーチ
-
情報少ないよなあ
プランとしては
①tree描画を止める
②tree操作を止める
①を昨日調べたけどわからなかった
eventfilterを使うか、treectrlをサブクラス化してpaintをオーバーライドするか
既存コントロールのサブクラス化はUIの書き方が面倒なのでまだやってない
eventfilterが簡単そうだったんだけどできない(-_-)
exampleも出てこないんだよなあ・・・
②は可能なのかな???出来ないわけがないような気もするけど・・ -
そもそもwxpythonのtreectrlの挙動は、DATAが3万件として
・全表示は数秒後に一気
・全削除は数秒かけてスクロールバーが伸びていくのがわかる
データ追加中は再描画しないが、削除中はするって事か?
削除の仕方を考え直せば良いんだろうか
Qtのコントロールはデータ追加と表示が別れてるから、現在データを表示させながら別のデータを作っておいて、ビューにセットするデータを一気に差し替える、みたいなことが出来そうな気がするんだけど。
wxも基本は同じだと思うんだが違うのかな??
treeの部分だけでもQTで書いてみるか??? -
プランは
・treeクリア前にデータを作る
・追加で文字の入力があればデータ作成を中止して、またデータ作成を始める
・データが出来たらtreeのデータを差し替え
・これはスレッドでやる、そのために別クラスにする
class maketree():
def init(): # 実行フラグを1にしておく
self.fkag=1
def flag(flag): # 中止フラグ
self.flag=flag
def make(tree,line): # 親のtreeとSQL文
# SQLの実行とデータのtreeへのセット
# 常にflagを確認して作業する、途中で0に変わってたら終了すること
# treeクリアのタイミングは???
- 別スレッドにしたクラスのフラグをいじるときっどうすんのかな?