問題タブ [slot]

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 に答える
283 参照

c++ - How to dynamically load datatypes during runtime through a plugin mechanism

Since Qt doesnt allow templates in their slots, I tried to do the following solution without success.

First a would like to create a list like this:

Dashboard 0 and 1 are both derived from widget

Lets say you have a QListWidget where we add the strings in the list and then do the connection:

How would I create that list and store types just like you do in C# Type?

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

qt - QtはQueuedConnectionを使用して2つの信号を接続します

Qtのドキュメントには、2 つの信号を一緒に接続できると記載されています。

信号を別の信号に直接接続することも可能です。

私は試した:

前述のように動作しますが、Qt のドキュメントは続きます。

(これにより、最初のシグナルが発行されるたびに、すぐに 2 番目のシグナルが発行されます。)

これは、QueuedConnection が正しく機能しないということですか? スレッド間で 2 つのシグナルを接続できますか?

私がこれを尋ねている理由は、これを回避することでアプリケーションのクラッシュのクラスを解決したためですが、これが信号の接続に関連しているかどうかはわかりません.

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

qt - QT の問題で接続 - 接続されていませんか?

QGraphicsPixmapItem から派生したカスタム クラスがあります。GraphPixmapItemCustom と呼ばれ、オーバーロードされたメソッドは次のとおりです。

シグナルはヘッダーで宣言されています。

呼び出されたクラスGraphPixmapItemCustomのオブジェクトへのポインタを持つメインクラスで

メインクラスには、次のスロットがあります。

メインクラスのコンストラクターには接続があります:

私が持っているスロットでqDebug("YUPPY IT ACTUALLY WORKS!");

しかし、スロットは解雇されていません。なんで?すべての moc ファイルと、そこにある必要のないすべてのものを削除しました。.proそのため、必要なフォーム.h.cpp一緒に必要なファイルのみ.uiが残されました。

Google でほとんどのヒットを確認しました。それが機能した最高のものは何ですか(私にはわかりません-おそらく何かを変更しました)!この接続の効果を覚えています。ヘルプ!

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

qt - QTextEditサブクラスの信号とスロットを接続しますか?

QTextEditからクラスを派生させ、それを「ログブック」として使用します。ログメッセージを受信するためのスロットを装備しました。

};

次に、別のクラスが次のようなシグナルを発します。

また、信号をスロットに接続します

ただし、メッセージが「ログブック」に表示されることはありません。ここで何が欠けていますか?

解決済み:シグナルを発行した後に接続メソッドが呼び出されました:-(

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

multithreading - スレッド化されたクラスの Qt シグナルとスロット

テーブルを表示したり、データを計算したりする QWidget TableView クラスがあります...

そのコストラクタ内で、クラスの FortuneServer サーバーを起動します。

このクラスは、FortuneServer::incomingConnection で次のような新しいスレッドを開始します。

私は次のことをする必要があります:

  1. クライアントからこのスレッドで取得した文字列を、別の文字列を計算してこのスレッドに戻し、クライアントに送信する TableView クラス内の関数に接続する必要があります。

  2. スレッドからの発行を使用する場合、スレッドに結果を待機させるにはどうすればよいですか?

これはどのように正しく行われますか?

タイ

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

qt - QPushbutton を 2 回押す必要があります

QTでツールボタンのリストを作りたいです。ツールボタンはスコラエリアに表示されます。このリストは、プッシュボタンがクリックされたときに表示されます。私はコードを作成しましたが、リストを表示するためにプッシュボタンを 2 回押す必要があることを除けば、動作します。これが私のコードです:

「find_btn」を押すと、ボタンが入ったスクロールエリアが表示されます。現時点では、ボタン付きのスクロールエリアが表示されますが、「find_btn」を2回クリックした後にのみ表示されます。

スクロールエリアなどを更新する必要があると思います。接続が問題を引き起こしている可能性がありますか?誰でも助けることができますか?

0 投票する
4 に答える
10299 参照

qt - 1 つのスロットに複数の信号

私のGUIでは、スクロールエリアを上下にスクロールする2組のボタンが必要です。最初のボタン セットは scrollarea1 で動作し、2 番目のボタン セットは scrollarea2 で動作するはずです。スクロールエリアに配置したウィジェットは、viewport1 と viewport2 と呼ばれます。どちらのボタン セットも同じ (上下にスクロールする) 必要があるため、両方のボタン セットのスクロールを処理する scrollUp と scrollDown という 2 つのスロットを作成することにしました。残念ながら、私はこれを機能させることができず、助けが必要です。私は次のことを試しました:

しかし、これはいくつかの理由で機能しません。また、次のようないくつかの引数をスロットに与えてみました。

しかし、やはり成功しません。誰でも私を助けることができますか?

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

lambda - PyQt QObject.connect(instancemethod)およびQtCore.connect(Qobj、SIGNAL()、instancemethod)は、ラムダ関数とは異なる動作をします

文字列のリストからPyQtメニューを作成するためのフォローアップでは、その場でメニューも作成していて、どのメニュー項目がクリックされたかを知りたいと思っています。したがって、次のようなコードを使用しました。

Ouput:

アイテム:False(triggered()シグナルのQt Docsに記載されているデフォルトの「bool」パラメーター)

object.connect()は、connect(object、SIGNAL(...)、slot)と比較して「新しい」形式だと思ったので。また、コンパイル時にシグナル名を確認できるので、うまく機能します。しかし、それは機能しませんでした。私が合格したのは「bool=false」だけでした(triggered()のQtドキュメントに記載されています)。したがって、検索した後、上記のURLに出くわしました。いいえ、私はこれを持っています:

これは(メニューを1回クリックすると)次のようになります。

アイテム:False(action.triggered.connect(l)行、間違っています)アイテム:1つ(self.connect行、右)

なぜこれら2つは異なる動作をするのですか?このラムダ構造を使用するまで、2種類の接続の違いに気づいたことはありません。

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

qt - Qt:QTableWidgetがジオメトリを変更するたびにスロットを実行しますか?

QTableWidgetから派生したウィジェットを作成しました。列または行のサイズが変更されるたび、およびウィジェットのサイズが変更されるたびに、スロットを実行したいと思います。そのための信号がないので、それを行う方法は?

どうもありがとうございます。

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

qt - QMenuのカストンスロットを作成する

私はQtWorldを初めて使用
します)MSVC 2008で新しいQtアプリケーションを作成しました
。QtCreatorを使用して、必要なコントロールを追加しました。そのうちの1つはQMenuBarです。CallBack
(C#)と同等の機能はQtのスロットです。
QtCreatorを使用してQMenuのカスタムスロットを作成する方法についての情報が見つかりませんでした。