我在Qt中创建了新表单,我想问你表单加载功能在哪里,我可以把我的代码放在哪里。
另一个问题是file_exists不起作用,我不知道为什么(我想使用C本机函数),而我的Messagebox在表单加载之前显示为什么?我想在表单中加载然后显示我的Messagebox。最后一件事是this-> close(); if if语句不起作用。
这是我的代码:
#include "nacitanie_okno.h"
#include "ui_nacitanie_okno.h"
#include "funkcie.h"
#include <iostream>
const char *subory[] = { "test.txt" } ;
nacitanie_okno::nacitanie_okno(QWidget *parent) :
QDialog(parent),
ui(new Ui::nacitanie_okno)
{
ui->setupUi(this);
int i;
int pocet = 1;
int percent = 20 / pocet;
for(i = 0; i < pocet ; i++){
if(file_exists(subory[i])){
ui->progressBar->setValue(ui->progressBar->value() + percent);
} else {
MessageBox("Hi","teeest"); // my own function for messagebox
this->close();
}
}
}
nacitanie_okno::~nacitanie_okno()
{
delete ui;
}
在funkcie.h中是这样的:
bool file_exists(const char * subor)
{
if (FILE * sub = fopen(subor, "r"))
{
fclose(sub);
return true;
}
return false;
}
谢谢
答案 0 :(得分:0)
创建Form的最佳方法是指针 &#34;加载表格&#34; function是类的构造函数 所以,当你想要创建一个表单时,假设你有&#34;类Myform;&#34;这是一个gui表类,应该是这样的:
Myform * form = new Myform(&#34;构造函数变量&#34;);
这将调用构造函数,您应该在其中编写您想要的表单加载函数。
使用此 - >隐藏这应该工作。