問題タブ [qcheckbox]
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.
c++ - 信号とスロットをqcheckbox createに動的に関連付けます
私は非常に具体的な問題を抱えているので、できるだけ明確にしようとしています。
QTabWidget
を含むを持っています。QTableWidget
私のすべての行はQTableWidget
、ファイルを読み取ることによって動的に作成されます。
ご覧のとおり、行を作成するときはqCheckBox
、末尾に a を追加します。私の目標は、クリックしたときにこの行をQTableWidget
私の最後のタブに送信し、チェックを外すとこの行を削除することです。QtableTab
qCheckBox
qCheckBox
したがって、ラインを動的に作成するたびにqCheckBox
、シグナルに関連付けようとします。
しかし、それはうまくいきません、私はエラーを持っています:
しかし、このスロットは存在します。ヘッダー ファイルと cpp で次のように宣言します。
この問題を解決するための私の方法は良いですか? はいの場合、信号をスロットに正しく関連付ける方法と、いいえの場合、続行する方法は?
ありがとうございました。
[編集] : を作成し、qCheckBox
動的に関連付ける関数のコードは次のとおりです。
c++ - Qチェックボックス名アクセス
次のようにチェックボックスを生成します。
これらのチェックボックスに名前でアクセスする必要がありますが、それらはすべて同じ名前ですか?
彼らが表示するテキストを読む必要があります。
これについてどうすればよいですか?
for ループを実行して i の値をチェックボックスの最後に追加することは可能ですか? 実際には、チェックボックスはチェックボックス[0]、チェックボックス[1]などと呼ばれますか?
編集:
コードを次のように変更しました。
これはチェックボックスに動的に名前を付ける方法だと思ったので、それらをループしてテキスト値を取得できます。
この行で「可変サイズのオブジェクトが初期化されていない可能性があります」というエラーが表示されますQCheckBox *typecheckbox[i] = new QCheckBox(filt, this);
ソリューション/代替アプローチへのアイデアはありますか?
pyqt4 - QCheckBox のテキストをアイコンの上に置く方法はありますか?
たくさんのチェックボックスを保持するグリッドレイアウトがあります。チェックボックスに画像とテキストを追加したかったのです。私が抱えている問題は、チェック ボックスのレイアウトが左から右 (チェック ボックス、アイコン、テキスト) であることです。
アイコンの上にテキストを配置する方法はありますか? スタイルシートの使用がこれで機能するかどうか、またはそれがどのように見えるかさえわかりません。
ありがとうございました。
qt - チェックボックス付きのQTableWidget
QTableWidget
アイテム内のテキストの代わりにチェックボックスを使用する必要があります。チェックボックスはアイテムの中央にある必要があります。
チェックボックスがチェックされている間に私が試した例。チェックボックスのチェックを外すと消えます。
python-2.7 - テーブルのチェック状態チェックボックス (pySide)
表 10 の行 2 列、最初の列に、2 番目の一時テキストにチェック ボックスを含めます。
Copy という名前のボタンを押した後、cloumn 1 のすべての checkBox の状態を確認する必要があります (印刷のみ)。
................................................................... ...................................................
python-2.7 - QCheckbox状態を正しく接続するpyqt4
QWidget
を含むクラスクラスがありQLabel
ます。クラスはQCheckbox
'es を生成しQVBox
ます。各チェックボックスを、最後のチェックボックスのタイトルを表示するnameCheckBox
ように更新するメソッドに接続しようとしています。QLabel
ただし、チェックボックスが実質的にオフ/チェックされている場合、常に未チェックとして検出されます。また、返される名前は常に最後に作成されたチェックボックスです。どこが間違っているのか分かりません。これが私のコードです:
編集1
いくつかの「ハック」ソリューションを見つけました。
解決策 1 : callBack 関数を作成するとうまくいきます。
次に、QCheckbox().stateChanged
この方法で信号を接続します。
解決策 2:partial
モジュールの使用:
まず、モジュールをインポートします。
次に、信号接続は次のように行われます。
ただし、ラムダ式を1行で使用したいと思います。特に、それがどのように機能するかを理解したいと思います。リンクをたどると、問題はラムダスコープに関するものであることがわかりました。Oleh Prypin がアドバイスしてくれたように、私は次のように書いています。
ここで、変数i
は新しいものです。しかし、私の元の問題は残っています。次に、好奇心からこれを試しました:
しかし、次のエラーが表示されます。
ここでは、オフ/チェックすると正しいボタンが認識されるようです。しかし、新しいlabel
変数は int と見なされるようですか? そこで何が起こるの?