
我擦, 你这要能写进去才怪呢。
你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);
}
会调用scrollarea窗口显示,窗口大小能根据大小自动调整,但是最大为1024768,过大就要有滚动条来显示
mainwindow中点击“显示”调用scrollarea窗口,下面的函数是被一个按钮的槽函数调用的
void MainWindow::Show_Image_byname(char filename)
{
if(!filename || !strlen(filename))
{
return;
}
char buf[128]= {0};
strcpy(buf,SAVE_IMAGE);
strcat(buf,filename);
ScrollArea new_image = new ScrollArea();
new_image->set_image(buf);
new_image->setBackgroundRole(QPalette::Dark);
new_image->show();
return;
}
添加文件scrollareaui文件,画出一个scrollarea
在生成的scrollareah中添加私有成员QLabel
private:
Ui::ScrollArea ui;
QLabel label;
在析构函数中添加内存释放
ScrollArea::~ScrollArea()
{
delete ui;
if(label)
{
delete label;
}
}
在生成的scrollareacpp中添加显示实现函数
void ScrollArea::set_image(char filename)
{
QImage ppm = new QImage(filename);
label = new QLabel();
printf("ppm->width()=%d, ppm->height()=%d\n",ppm->width(), ppm->height()); //获取的宽度和高度
label->setPixmap(QPixmap::fromImage(ppm));
this->setWidget(label);
/设置窗口最大高度和宽度为1024768/
this->setMaximumHeight(768);
this->setMaximumWidth(1024);
this->resize(QSize( ppm->width()+5, ppm->height() +5));
return;
}
给你说下大概的流程吧 textedit按行读取 然后建立一个qstring的容器 读取各行数据 按钮点击后进行排序 然后把数据输出到textbrowser 其实没必要这样用 直接建立一个qtablewidget 输入内容后点击headeritem 应该直接就可以排序的
要将button的信号事件和对应的槽函数连接起来:用这句
QObject::connect( button, SIGNAL(clicked()), textedit, SLOT(on_button_clicked()) );
其中button的类申明内要加信号函数clicked的申明,要用signals关键字,处理该事件的类(你这边应该是计算器类吧)内申明on_button_clicked()
显示的 *** 作在 on_button_clicked()内处理。
以上就是关于QT如何获取文本框中输入的内容全部的内容,包括:QT如何获取文本框中输入的内容、QT如何使用scrollarea和Label(或者TextEdit)显示很多的内容、Qt中如何在第一个文本框获取内容,然后在第二个文本框输出等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)