一、Qt4.7添加背景
QPixmap pixmap(":/new/prefix1/1.jpg");
QPalette palette;
palette.setBrush(backgroundRole(), QBrush(pixmap));
setPalette(palette);
文件1.jpg在Resource data中的/new/prefix1/ 目录;
二、隐藏标题栏
weather::setWindowFlags(Qt::FramelessWindowHint); //隐藏;
问:如何用QT创建一个不带标题栏的窗口?就象启动画面一样的?
答:loginDlg::setWindowFlags(Qt::FramelessWindowHint)即可;
// Qt::WStyle_Customize|Qt::WStyle_NoBorder
Qt::WStyle_NoBorder FramelessWindowHint Use Qt::FramelessWindowHint instead.
三、设置窗口大小样式,有四种选择
w.show(); 实际大小
w.showEvent() 自定义大小
w.showFullScreen(); 全屏
w.showMaximized(); 最大化
w.showMinimized(); 最小化
w.showNormal(); 正常
四、编译安装qt-4.6.2 嵌入式版 里面没有phonon的库 怎么办
加上编译选项 -phonon -phonon-backend 就把phonon库编译进去了.
五、字体格式设置
QTextCharFormat TCForm;
QFont fon2;
// fon1.setFontUnderline(1);
fon2.setBold(1); //设为粗体
TCForm.setFont(fon2); //配置QTextCharFormat
ui->calendarWidget->setDateTextFormat(date1,TCForm);
像QTextCharFormat ,QFont ,Widget这些类,可以直接用TCForm.setFont(fon2); ui->是名空间。
六、设置开机启动qt程序
在/bin/qt4 里面有开机启动的脚本
注意要启动的文件在检索附加文件时和在控制台启动有不同,比如在fopen("qidong.txt");qidong.txt在/opt/qt-4.7/bin/下面。
在控制台启动时而且程序在/opt/qt-4.7/bin/下面,则会直接检索/opt/qt-4.7/bin/目录。
在开机自启动时,则会检索根目录 / ,而不是/opt/qt-4.7/bin/;这样就有可能造成程序不能启动。所以在写程序是应该写成
fopen("/opt/qt-4.7/bin/qidong.txt");
vi /bin/qt4
#!/bin/sh
echo Start Qt-4.7 > /dev/tq2440_serial0
export set TSLIB_TSDEVICE=/dev/event0
export set TSLIB_CALIBFILE=/etc/pointercal
export set TSLIB_CONFFILE=/etc/ts.conf
export set TSLIB_PLUGINDIR=/lib/ts
export set HOME=/root
export set QTDIR=/opt/qt-4.7
export set QPEDIR=/opt/qt-4.7
export set QTDIR1=/sbin
export set QWS_DISPLAY="LinuxFB:/dev/fb0"
export set QWS_DISPLAY="LinuxFB:mmWidth130:mmHeight100:0"
export s$QPEDIR/bin/home6 -qws 1> /dev/null 2>/dev/null
export s$QPEDIR/bin/home6 -qwsLIB:/dev/event0"
export set QT_QWS_FONTDIR=$QTDIR/lib/fonts/
export set PATH=$QPEDIR/bin:$PATH
export set LD_LIBRARY_PATH=$QTDIR/lib:$QPEDIR/plugins/imageformats:$LD_LIBRARY_P
if [ -f /etc/pointercal ] ; then
$QPEDIR/bin/home6 -qws 1> /dev/null 2>/dev/null
//就在这两行 加启动程序
$QPEDIR/bin/home6 -qws
else
ts_calibrate
# $QPEDIR/bin/mousecalibration
$QPEDIR/bin/hello_cn -qws 1> /dev/null 2>/dev/null
fi
七、qt4的中文显示问题
1)、去文泉驿官方网http://wenq.org/下载一个字库回来。里面有很多字库,我选择常用的正黑。正黑字库文件下载地址是:
http://downloads.sourceforge.net/project/wqy/wqy-zenhei/0.8.38%20(Pangu)/wqy-zenhei-0.8.38-1.tar.gz?use_mirror=nchc&18950117
下载回来的文件里面有这样一个文件:wqy-zenhei.ttc,将其放到/opt/qt-4.5/lib/fonts里面,再在主函数里面修改字库的ID:
int main(int argc, char *argv[])
{
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
QApplication a(argc, argv);
Widget w;
w.setFont(QFont("wqy-zenhei",14,QFont::Normal));//这行是关键,没有这行是显示不了中文的。
w.setWindowTitle(QObject::tr("为什么why?"));
w.show();
return a.exec
}
/* QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
/* QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));*/
load_etc();
MainWidget w;*/