qt如何获取主窗口的指针

qt如何获取主窗口的指针,第1张

uimainWindow

。。。我错了

传参数进去和全局变量应该都行把。。。

这个可行但是只是显示ui界面数据我需要对mainwindow中所有变量进行访问

QApplication::focusWidget()

初始化mainWindow的时候初始化个全局变量就类似于qApp的全局指针指向QApplication吧

这样的话就得extern了吧

要么继承个qapp里面放个指针用qApp-getMainWindow()来返回。。其它想不到了等高手

还是没能获取只好把mainwindow里的数据设置成静态的了按理说mainwindow不能new的话qt应该提供一种返回主窗口的指针

你可以给主窗口发个信号,把任务交给主窗口做。QT没有类似GetParent的功能。

我擦, 你这要能写进去才怪呢。

你obtainputname函数里的一个临时变量想要在这个函数外面使用??

// FILE fp;

// string strname;

// fp=fopen("Macrotestini","w+");

connect(lineEdit,SIGNAL(editingFinished()),this,SLOT(obtainputname()));

// const char str1=strnamec_str();

// fprintf(fp, "%s\n", str1);

void obtainputname()

{

QString strname = lineEdit->text();

FILE fp;

fp=fopen("Macrotestini","w+");

fprintf(fp, "%s\n", strnametoLatin1()data());

fclose(fp);

}

如果是 QLineEdit,则用: QString str =  ui->edit->text();

如果是 QPlainTextEdit,则用: QString str =  ui->edit->toPlainText();

如果是 QTextEdit, 获取简单文本则用: QString str =  ui->edit->toPlainText(); 获取富文本则用:QString str =  ui->edit->toHtml(); 。

Qt中获取控件的margin方法如下所示:

先通过getChildAt(intindex)获取到子控件,再通过lp=getLayoutParams()获取到子控件的参数,lpleftMargin就是你想要的数值。

不建议通过这种方式,这样会破坏类的封装性!建议在主窗口中定义接口函数,在接口函数中可以访问主窗口的任何控件。然后在子窗口中parentWidget()取得主窗口的指针,使用该指针调用主窗口的接口函数,从而访问主窗口的控件。

QFileIconProvider fileIP;

QString filePath = QString("testtxt");

QIcon icon = fileIPicon(QFileInfo(filePath));

以上就是关于qt如何获取主窗口的指针全部的内容,包括:qt如何获取主窗口的指针、QT如何获取文本框中输入的内容、用qt设置的编辑框,如何获取编辑框里输入的信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9677394.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存