Qt for Windows 小积累

都是些小东西,又不好单独写,就积累到一起算了,等多了再单独总结好了。

1. 显示中文

    在main函数中加入粗体内容,还有就是记得在使用字的地方加上tr()就行了。例如:

 int main(int argc, char *argv[])

{

QApplication a(argc, argv);

QTextCodec::setCodecForTr(QTextCodec::codecForLocale());

Widget w;

w.show();

return a.exec();

}

 

Widget::Widget(QWidget *parent)

: QWidget(parent), ui(new Ui::Widget)

{

。。。

setWindowTitle(tr("连连看"));//设置窗体标题栏名称

。。。

}

 

2. 创建系统托盘及右键菜单

QSystemTrayIcon *trayIcon;

QMenu *trayIconMenu;

 

QAction *minimizeAction;

QAction *maximizeAction;

QAction *restoreAction;

QAction *quitAction;

 

。。。

minimizeAction = new QAction(tr("Mi&nimize"), this);

connect(minimizeAction, SIGNAL(triggered()), this, SLOT(hide()));

 

maximizeAction = new QAction(tr("Ma&ximize"), this);

connect(maximizeAction, SIGNAL(triggered()), this, SLOT(showMaximized()));

 

restoreAction = new QAction(tr("&Restore"), this);

connect(restoreAction, SIGNAL(triggered()), this, SLOT(showNormal()));

 

quitAction = new QAction(tr("&Quit"), this);

connect(quitAction, SIGNAL(triggered()), qApp, SLOT(quit()));

 

trayIconMenu = new QMenu(this);

trayIconMenu->addAction(minimizeAction);

trayIconMenu->addAction(maximizeAction);

trayIconMenu->addAction(restoreAction);

trayIconMenu->addSeparator();

trayIconMenu->addAction(quitAction);

 

trayIcon = new QSystemTrayIcon(this);

trayIcon->setContextMenu(trayIconMenu);

 

QIcon icon("..////icons//soft//MSN.png");

QIcon iconWin("..////icons//soft//QQ.png");

trayIcon->setIcon(icon);  //设置右下角button图片

setWindowIcon(iconWin);   //设置左上角标题栏图标

 

3. 最大最小化和关闭按钮均不显示

设计好的框架被去掉了,所以就是一片灰色的窗体。最大化会覆盖整个屏幕。

setWindowFlags(Qt::FramelessWindowHint);

Qt::FramelessWindowHint可选择。

你可能感兴趣的:(框架,windows,UI,qt,button,Signal)