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设置的编辑框,如何获取编辑框里输入的信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)