都是些小东西,又不好单独写,就积累到一起算了,等多了再单独总结好了。
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可选择。