gpt4 book ai didi

c++ - Qt "Form Load"函数

转载 作者:行者123 更新时间:2023-12-02 10:25:45 24 4
gpt4 key购买 nike

我在 Qt 中创建了新表单,我想问你表单加载功能在哪里,我可以把我的代码放在哪里。

另一个问题是 file_exists 不起作用,我不知道为什么(我想使用 C native 函数),而我的 Messagebox 在表单加载之前显示为什么?我想加载表单,然后显示我的消息框。最后一件事是 this->close(); at 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;
}

谢谢你

最佳答案

  • 创建表单的最佳方式是指针。
    “加载表单”函数是类的构造函数。
    所以当你想创建一个表单时,假设你有“class Myform;”这是一个gui表单类,应该是这样的:

    Myform* form = new Myform("构造函数变量");

    这将调用构造函数,在那里你应该将你想要的东西写成 Form Load Function 。
  • 使用 this->hide 这应该可以。
  • 打印 errno 值,因为 fopen 在错误时设置 errno 值。
  • 关于c++ - Qt "Form Load"函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26946891/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com