QLineEditからのvalueChangedシグナルをプログラムでカスタムスロットに接続する必要があります。 Qt Designerを使用して接続を行い、グラフィカルインターフェイスを使用して接続する方法を知っていますが、信号とスロットについて詳しく知ることができるように、プログラムで接続したいと思います。
これは私が持っているもので、機能しません。
.cppファイル
// constructor
connect(myLineEdit, SIGNAL(valueChanged(static QString)), this, SLOT(customSlot()));
void MainWindow::customSlot()
{
qDebug()<< "Calling Slot";
}
.hファイル
private slots:
void customSlot();
ここで何が欠けていますか?
ありがとう
QLineEdit
にはvalueChanged
シグナルがないようですが、textChanged
(サポートされているシグナルの完全なリストについてはQtのドキュメントを参照してください)。 connect()
関数呼び出しも変更する必要があります。そのはず:
_connect(myLineEdit, SIGNAL(textChanged(const QString &)), this, SLOT(customSlot()));
_
スロット内の新しいテキスト値のハンドルが必要な場合は、代わりにcustomSlot(const QString &newValue)
として定義できるため、接続は次のようになります。
_connect(myLineEdit, SIGNAL(textChanged(const QString &)), this, SLOT(customSlot(const QString &)));
_