問題タブ [qcompleter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
4397 参照

qt - QCompleterを完全にインラインにして、ポップアップを表示できますか?

Qt 4.5(PyQt 4.6.1)

QComboBoxテキストフィールドの入力で始まるエントリにエントリを自動的にフィルタリングする、に似たウィジェットを探しています。コンボボックスには約300個のアイテムがあります。

私は2つのアプローチを試しました:

QLineEditQCompleter

利点

  • アイテムのフィルタリングは機能します。

短所

  • テキストフィールドが空の場合、ポップアップは表示されません。
  • インライン補完は行いません。
  • リストにないアイテムを挿入できます。

QComboBox挿入をnoに設定して編集可能

利点

  • 素敵なポップアップ
  • テキストフィールドにインラインで入力します。

短所

  • フィルタリングなし
  • 入力は、テキストフィールドまたはポップアップのいずれかでのみ可能です。ポップアップをクリックしても、ポップアップ内で最も一致するアイテムは選択されません。

必要なもの

  • アイテムを選択するためのポップアップ。
  • 遅いティッパーはアイテムの名前をチップし始めることができるはずであり、ポップアップは最も一致するものに切り替わります。
  • できれば、部分的に一致するアイテムのみが表示されるようにアイテムをフィルタリングする必要があります。
0 投票する
3 に答える
6244 参照

qt - QCompleter のモデルを動的に更新する方法

で使用QCompleterし、のモデルを動的QLineEditに更新したい。つまり、モデルの内容はのテキストQCompleterに従って更新されます。QLineEdit

1) mdict.h

2) mdict.cpp

を入力すると、、 、およびkeyborad を使用して項目を選択できるhオートコンプリート リストが表示されるはずです。しかし、それは私が期待したように動作しません。h0h1h2

信号QLineEditを発する前にモデルを設定する必要があるようです。textChanged1 つの方法は を再実装することですが、のテキストkeyPressEventを取得するには多くの条件が必要です。QLineEdit

QCompleterのモデルを動的に更新する簡単な方法はありますか?

0 投票する
1 に答える
865 参照

c++ - QCompleter は二重入力を強制します

ポップアップが表示されているがアイテムの選択に使用されていないときに、ユーザーに 2 回入力を強制する QCompleter があります。完成品に関連付けられた QComboBox のモデルは、完成品のモデルとして使用されます。

ユーザーがアイテムを入力すると、可能な補完のリストが増えます。より長い補完が利用できる場所で短い補完 (例: "dir") を入力し始め、ポップアップから何も選択せずにヒットした場合 (つまり、アクティブ化、ハイライト、または indexchanged のいずれも起動されない)、Enter キーを再度押す必要があります。入力したテキストを処理します。これを回避する簡単な方法はありますか?

ありがとう

0 投票する
3 に答える
2858 参照

qt - Qt QCompleter の複数の一致

QCompleter を、コンマで区切られたいくつかの同等のオプションに一致させようとしています。これを行う簡単な方法はないように見えますが、QCompleter リファレンスの 1 行で、関数 QCompleter::splitPath: "リスト モデルで使用すると、返されたリストの最初の項目が照合に使用されます" と説明されていることに注意を引きました。これを必要な方法で使用できますか?入力文字列を分割して返すと、未完成の最後のアイテムがリストの最初になりますか? 私はそれを機能させることができませんでしたが、何か間違ったことをしている可能性があります。

0 投票する
6 に答える
13788 参照

qt - QCompleter カスタム補完ルール

Qt4.6 を使用しており、QCompleter を含む QComboBox があります。

通常の機能は、プレフィックスに基づいて補完のヒントを提供することです (これらは、インラインではなくドロップダウンにすることができます。これが私の使用法です)。たとえば、与えられた

入ってるだろchうけどそうじゃない。chicken soupchilli peppersgrilled chicken

私が欲しいのはch、それらすべてを入力して一致させることです。より具体的には、chickenと を一致chicken soupさせgrilled chickenます。また、テキストのコンテンツだけではない別の一致を生成するために、タグのようなものを
割り当てられるようにしたいと考えています。アルゴリズムは扱えますが、chschicken soup

QCompleter のどの関数をオーバーライドする必要がありますか?
どこを見ればいいのかわからない…

0 投票する
2 に答える
3784 参照

qt - PyQtでQCompleterポップアップウィンドウをカスタマイズするにはどうすればよいですか?

カスタマイズしたいQLineEditのQCompleterについていくつかあります。Chromeのアドレス/検索バーと同じように動作させたいです。

  1. 表示される行数を制限するにはどうすればよいですか?たとえば、15の一致がある場合でも、QCompleterに5を表示するだけにします。
  2. ポップアップウィンドウのサイズを変更するにはどうすればよいですか?たとえば、ポップアップウィンドウをきれいにぴったりとしたいと思います。上記の例のように、醜いスクロールバーを表示せずに、ポップアップウィンドウを5行に正確にサイズ変更したいと思います。
  3. ポップアップウィンドウを移動するにはどうすればよいですか?たとえば、ポップアップウィンドウの垂直位置を調整して、親ウィジェットの少し下になるようにします。
  4. 表示されたポップアップウィンドウのリストアイテムをフォーマットするにはどうすればよいですか?たとえば、一致する単語の部分を太字にします。
0 投票する
1 に答える
368 参照

c++ - カスタム QCompleter の奇妙な動作

私はすべて、この素晴らしい例に従うだけです:
http://qt-project.org/doc/qt-4.8/tools-customcompleter.html
modelFromFile メソッドでの変更を除いて、コードを正確にコピーします。

奇妙なことに、「fal」と入力すると、「フォールスルー」が表示されるのを待っていますが、何も表示されません。「break」と一部の単語で機能しますが、すべての単語では機能しません。
私は Kubuntu 12.04 を使用しており、Ubuntu 12.04 のパートナーはこの動作を取得します。
Qt Creator 2.4.1
Qt 4.8.0 (32 ビット) ベース

0 投票する
1 に答える
3392 参照

pyqt - readlineコンプリータを使用したPyQt LineEdit?

私は現在 PyQT GUI を作成しているコマンド ライン ツールに取り組んできました。readline モジュールを使用して現在のオートコンプリートの実装を取り、それを QLineEdit テキスト ボックスに入れたいと思います。これは可能ですか?おすすめはありますか?

これは私が readline モジュールで行っていることの例です:

最終的に、readline モジュールを QLineEdit ウィジェットで動作させることができない場合、最終的にやりたいことは、+-*/( のような記号で区切られた複数の単語を持つ機能を使用して、単語のリストを完成させることです。 )など...

ありがとう!

0 投票する
1 に答える
2436 参照

c++ - QCompleter から項目を選択した後、QLineEdit をクリアできない

アイテムを選択して(矢印キーを使用して)PopupCompletionモードを使用してリターンを押すと、lineEditは空になるはずですが(リターンを押すとlineEditをクリアします)、lineEditは空になりません。(もう一度「Enter」を押すと、lineEdit が空になります)。returnを押すとlineEditがクリアされると思いますが、returnを押すとQCompleterに選択した項目をlineEditに挿入するように指示されるため、何も起こらないようです。

ただし、矢印で選択する代わりにアイテムをクリックすると、すべて正常に機能します。

インターネットで解決策を見つけようとしましたが、同じ問題を抱えている人が 1 人だけ見つかりました: http://lists.trolltech.com/qt-interest/2006-10/thread00985-0.html。残念ながら答えはありません。私の問題を理解するのに役立つので、彼の質問を読んでください。

QCompleter が選択した項目を挿入した後に LineEdit をきれいにするにはどうすればよいですか? (活性化された信号をキャッチしても役に立ちません)