1

Datawindow 内に DropDownListBox を作成しました。

アイテムの変更時に、そのドロップダウンで選択したアイテムの値を INI ファイルに設定して保存します。

私の Open Event では、setitem を使用して、そのドロップダウンに保存された値を設定します。ここでの問題は、それらのドロップダウンで選択された項目のそのインデックスにフォーカスを設定しないことです。

選択したテキストのフォーカスを作成するためだけに、SetRow()、setcolumn()、SetText() も使用しました。この問題は、100以上のアイテムを持っていることです。選択した値が中間にある場合、たとえば Index#50 の場合、ScrollBar のフォーカスは Index#50 ではなく、一番上の Index#1 にあります。

何か助けはありますか?ありがとう。

4

2 に答える 2

2

1) SetRedraw で遊んでみる

dw.SetRedraw(false)
dw.SetItem(...)
dw.SetRedraw(true)

2) DDLW の代わりに DDDW を使用してみてください。また、整数インデックス列で DDDW を使用します。ビルダーが文字列「keys」で失敗することがあります

于 2012-07-23T06:30:20.110 に答える
0

A) これは、データウィンドウで DDDW 編集スタイルを使用すると非常に簡単になります。SetItem(row, column, value) を実行して、ドロップダウンに初期値を設定するだけです。

B) そうは言っても、リストボックス内の 100 以上のアイテムを「効果的な UI デザイン」とは呼びません。Google の検索ページに見られるように、タイプごとの検索機能を備えた編集ボックスに進化させます。

于 2012-07-23T18:52:08.710 に答える