qtlinux程序不显示文字

qtlinux程序不显示文字,第1张

qtlinux程序不显示文字原因: *** 作系统没有中文字体 ,此中能显示出的中文是一张,方框是后添加的中文。

解决办法:在 *** 作系统添加中文。

*** 作步骤:

1下载文件:simsunttf

下载地址:>

this->(QIcon("myapppng"));

设置应用程序的方法:

1、在你的工程目录创建一个txt文档,写入:

IDI_ICON1ICON"appico"

2、重命名改文件为rc,比如apprc

3、在工程pro中添加如下代码

RC_FILE=apprc

4、拷贝一张ico的至工程目录,命名为appico,编译即可。

如果说你的按钮没有显示,最有可能的原因是你没有将按钮的父窗口设置成你自定义的Widget

比如说你自定义了一个 Widget,它继承自 QWidget,示意如下:

//widgeth

#ifndef WIDGET_H

#define WIDGET_H

#include <QtGui/QWidget>

#include <QPushButton>

class Widget : public QWidget

{

Q_OBJECT

public:

Widget(QWidget parent = 0);

~Widget();

private:

QPushButton buttonA;

QPushButton buttonB;

QPushButton pButton;

};

#endif // WIDGET_H

在上面的头文件中定义了两个button以及一个指针,下面是源文件

//widgetcpp

#include "widgeth"

Widget::Widget(QWidget parent)

: QWidget(parent)

{

buttonAsetText("buttonA");

buttonBsetText("buttonB");

//在构造pButton时指定Widget为pButton的父窗口

//注意:由于pButton继承自QObject并且你为他指定了父窗口,

//父类中的QObjetc会对pButton的内存进行管理,并在合适的时候释放内存,

//所以你不需要在Widget的析构函数中去进行delete pButton的 *** 作,

//建议使用new这种方式来构造子控件

pButton = new QPushButton(this);

pButton->setText("buttonC");

//指定Widget为buttonA和buttonB的父窗口

//如果你不指定他们的父窗口,那么这些控件将不可见

//你可以注释下两行中的某条语句,来测试控件是否可见

//目前两个控件都是可见的

buttonAsetParent(this);

buttonBsetParent(this);

//移动控件到相应的坐标点

buttonAmove(100,100);

buttonBmove(100,150);

pButton->move(100,200);

}

Widget::~Widget()

{

}

//maincpp

#include <QtGui/QApplication>

#include "widgeth"

int main(int argc, char argv[])

{

QApplication a(argc, argv);

Widget w;

wshow();

return aexec();

}

这就是整个示例程序了,总的来说,要想窗体中的控件可见,你必须将该窗体设置成这些控件的父窗口。

当程序的初始化工作比较多,程序可能启动较长时间后,窗口才会显示出来,用户没准会抱怨程序响应的慢。

为了改善用户体验,最好在程序初始化这段时间显示logo,或者其他信息提示用户程序已启动。QT提供了QSplashScreen 类,其使用方法比较简单,下面的例子就是,当程序运行到splash show();时,logogif就会显示出来,当dialog的初始化完成,运行到 splash finish(& dialog);时,主窗口显示出来,并且启动画面隐藏

[cpp]view plaincopyprintint main( int argc, char argv[]) { QTextCodec :: setCodecForTr( QTextCodec :: codecForName( "GB18030" )); QApplication app(argc,argv); QPixmap pixmap(":/images/logogif"); //绑定一个 QSplashScreen splash(pixmap); splashshow(); //显示启动画面 appprocessEvents(); mainWindow dialog; dialogshow(); splashfinish(&dialog); //当主窗口启动后,启动画面隐藏 return appexec(); }

以上就是关于qtlinux程序不显示文字全部的内容,包括:qtlinux程序不显示文字、在Qt中如何设置Windows应用程序的图标和窗口图标、请问一下我在Qt一应用程序中,在构造函数里面写的widget比如按钮这些,运行后都无法显示,只有一空白窗体等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/10141516.html

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

发表评论

登录后才能评论

评论列表(0条)

保存