门户
书籍
教程
论坛
问答
下载
签到
个人空间
帐号
自动登录
找回密码
密码
登录
立即注册
账号
自动登录
找回密码
密码
登录
立即注册
请绘制轨迹完成人机验证
由vaptcha提供技术支持
登录
注册
搜索
搜索
搜索
热搜
qml
quick
串口
输入中文
数据库
arm
百度地图
qt聊天
QT安装
安装
多窗口
中文乱码
聊天
局域网
鼠标
QT
图片
乱码
rs485通讯
多线程
android
多文档编辑器
本版
用户
本版
用户
【HUX】问题互助平台
博客
动态
好友
帖子
收藏
道具
勋章
任务
淘帖
动态
日志
相册
分享
记录
留言板
群组
门户
导读
排行榜
设置
我的收藏
退出
Qt开源社区
›
精华区(请在“有问必答”发帖)
›
有问必答
›
其他
›
请教关于界面程序编写
发布主题
返回列表
请教关于界面程序编写
2
回复
8894
查看
[复制链接]
zwxhehe2012
当前离线
积分
14
zwxhehe2012
尚未签到
来源:
2014-12-22 17:46:30
显示全部楼层
|
阅读模式
2
Qter豆
刚接触QT,
两个界面文件都是用qt designer 画的
一般要调用界面中的控件都是 定义类的私有成员
Ui
::
MAINWindow
*
ui
;
然后调用该界面的控件的话,直接使用ui->控件对象就可以了
但是现在怎么在A界面的CPP文件中调用B界面中的控件
我是把B界面的定义的类对象作为A界面的一个私有成员,
class A: .......
{
private:
B *ui_b ;
.......
}
void class A:: function ()
{
// 想调用B界面中的一个lineEdit控件
ui_b->ui->lineEdit.................. ;
}
但是这样写会报错
请教一下,我在void class A:: function ()中该怎么写调用lineEdit控件
麻烦大家解答一下,非常感谢
还有请教一下 ,关于串口的问题:
已经在A的类内定义了一个串口类对象wincom
并且开了一个线程监控串口wincom
现在要在B的CPP文件中B的某个函数内调用串口wincom的函数
需要怎么写?B的对象是A的一个成员,wincom也是A的一个成员
最佳答案
一叶知秋
查看完整内容
qt的一个基础就是信号与槽,所以你要站在这个角度去写qt的程序,你上面提到的两个问题都属于类之间的通信问题,这个当然可以通过信号与槽来实现了,比如你想让B发生一个动作,那么你就可以再A里发出一个信号到B, 让B的槽函数去实现相应的动作就可以了, 这是一种方法,供你参考。 具体来说如第二个问题,你就可以再B的需要调用A的函数的位置 发出一个信号,然后将你想要调用的A的那个函数声明为槽函数, 然后绑定信号与槽就可以 ...
回复
使用道具
举报
一叶知秋
当前离线
积分
1027
一叶知秋
累计签到:882 天
连续签到:3 天
2014-12-22 17:46:31
显示全部楼层
qt的一个基础就是信号与槽,所以你要站在这个角度去写qt的程序,你上面提到的两个问题都属于类之间的通信问题,这个当然可以通过信号与槽来实现了,比如你想让B发生一个动作,那么你就可以再A里发出一个信号到B, 让B的槽函数去实现相应的动作就可以了, 这是一种方法,供你参考。
具体来说如第二个问题,你就可以再B的需要调用A的函数的位置 发出一个信号,然后将你想要调用的A的那个函数声明为槽函数, 然后绑定信号与槽就可以了。。。
回复
使用道具
举报
shasidaran
当前离线
积分
812
shasidaran
累计签到:597 天
连续签到:1 天
2014-12-23 10:06:26
显示全部楼层
一般一个界面写成一个类,类之间的关联用信号与槽的机制,从而达到A类控制B类的效果,
不过使用过程中经常要注意的是,类之间双向连接时,避免循环;发发生A类B类相互引用,即两头文件互相包含时,要前向声明
回复
使用道具
举报
返回列表
发表新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满)
我知道了