首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

多窗体间调用函数兑现更新

2013-07-01 
多窗体间调用函数实现更新我在A窗体里点击一个按钮btn1后B窗体中的一个函数sx()执行sx()里是改变B窗体里控

多窗体间调用函数实现更新
我在A窗体里点击一个按钮btn1后  B窗体中的一个函数sx()执行  sx()里是改变B窗体里控件的一些内容 实现更新效果    用信号槽的话如何做? 窗体间调用函数
[解决办法]
信号与槽不能实现么?两个窗体是独立的应用程序还是一个应用程序的多个窗体
[解决办法]

引用:
同一应用程序里的父窗体和子窗体  我互相传值都可以 但把函数public了调用 没反应唉

这样的话,需要更新的窗口定义一个槽函数用来更新窗口,连接button的clicked信号
[解决办法]
引用:
父窗体:

public:
    void sx();

Dialog *d=new Dialog;
connect(d,SIGNAL(on_btn_clicked()),this,SLOT(sx()));
d->show();

void MainWindow::sx()
{
    ui->textEdit->setText("dsdsdsd");
}


子窗体:
private slots:
void on_btn_clicked();

void Dialog::on_btn_clicked()
{

}


这么不行么?


public:
    void sx();

public slots:
    void sx();
[解决办法]
class A
{
    ...
    private:
        B *pb;
        QPushButton *btn;
}

class B
{
    ...
    public slots:
        void sx(void);
}

A()
{
    pb = new B();
    QObject::connect(&btn, SIGNAL(clicked()), pb, SLOT(sx()));
}

热点排行