我在GUI上有一个QTextEdit控件。我想以与在C#或MFC中相同的方式将它链接到控件,但是找不到命令。
基本上我有这个:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
private:
Ui::MainWindow *ui;
QString fileName_;
QMap<QString, unsigned int> vars_; // this is the data I want to associate
};
并且在ui :: MainWindow类中我有:
class Ui_MainWindow
{
public:
QWidget *centralWidget;
QTextEdit *ALU; // this is the control I want to associate with the data
.
.
.
我确信这是微不足道的,但我看不出如何将地图实例与GUI控件相关联。
我是盲人还是Qt使用不同的模式?
答案 0 :(得分:1)
您可以使用QTextEdit::textChanged()
信号。
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0) : QMainWindow(parent)
{
connect(ALU, SIGNAL(textChanged()), this, SLOT(updateVars()));
...
}
private slots:
void updateVars()
{
// do something with vars_
}
};