• 5301阅读
  • 1回复

如何向QT designer设计的窗体添加自制信号|槽 [复制链接]

上一主题 下一主题
离线slaink
 
只看楼主 倒序阅读 楼主  发表于: 2010-05-25
汗……
发帖怎么报数据库错误啊

问题应该是比较简单吧。
用qt creator 创建了一个GUI的application,其中用form设计了一个窗口
我自己写了一个readict.h readict.cpp的类,用来读取字典文件
其中有几个槽和信号
请问我如何将我自己写的槽和信号与窗体connect呢?
例如:
    QObject::connect(lineEdit,SIGNAL(textChanged(QString)),stardict_txt,SLOT(word_change(QString)));
    QObject::connect(stardict_txt,SIGNAL(word_find(QString)),textBrowser,SLOT(setText(QString)));
但是很明显他说这两个lineedit和textbrowser不是在这个作用域里定义的。(我写在主函数的cpp里)
请问能不能比较清晰的将这个东西实现呢?
请讲详细点谢谢,譬如说怎么include头文件,以及在那里可以做connect(按照qt creator生成的那个默认的GUI application,是有一个ui_mainwindow.h,貌似可以写那个里面,但是还是不太会)。
谢谢了!
离线lore乞丐
只看该作者 1楼 发表于: 2010-05-25
在你定义的类的实现文件.cpp的构造函数中,通过私有数据成员ui对这些窗口部件进行引用。具体如下:
MyClass::MyClass()
{
      ........
      QObject::connect(ui->lineEdit, SIGNAL(textChanged(QString)), ui->stardict_txt, SLOT(wordChange(QString)));
      QObject::connect(ui->stardict_txt, SIGNAL(word_find(QString)),  ui->textBrower, SLOT(setText(QString)));
      ..........
}
快速回复
限100 字节
 
上一个 下一个