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比如按钮这些,运行后都无法显示,只有一空白窗体等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)