用qt写一个qq的窗体样式
时间: 2023-05-20 08:01:18 浏览: 171
好的,我可以回答这个问题。以下是一个简单的用Qt编写QQ窗体样式的示例代码:
```cpp
#include <QtWidgets>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget window;
window.setWindowTitle("QQ窗体样式");
window.resize(400, 600);
// 创建顶部工具栏
QToolBar *toolBar = new QToolBar(&window);
toolBar->setIconSize(QSize(16, 16));
toolBar->setMovable(false);
toolBar->setFloatable(false);
toolBar->setToolButtonStyle(Qt::ToolButtonIconOnly);
window.addToolBar(Qt::TopToolBarArea, toolBar);
// 添加工具栏按钮
QAction *addFriendAction = new QAction(QIcon(":/icons/add-friend.png"), "添加好友", &window);
toolBar->addAction(addFriendAction);
QAction *chatAction = new QAction(QIcon(":/icons/chat.png"), "聊天", &window);
toolBar->addAction(chatAction);
QAction *groupAction = new QAction(QIcon(":/icons/group.png"), "群聊", &window);
toolBar->addAction(groupAction);
QAction *settingAction = new QAction(QIcon(":/icons/setting.png"), "设置", &window);
toolBar->addAction(settingAction);
// 创建主窗体布局
QVBoxLayout *mainLayout = new QVBoxLayout(&window);
mainLayout->setMargin(0);
mainLayout->setSpacing(0);
// 创建左侧联系人列表
QListWidget *contactList = new QListWidget(&window);
contactList->setMinimumWidth(200);
contactList->setStyleSheet("QListWidget { border: none; }"
"QListWidget::item { height: 50px; }"
"QListWidget::item:selected { background-color: #E6F3FF; }");
mainLayout->addWidget(contactList);
// 创建右侧聊天窗口
QTextEdit *chatWindow = new QTextEdit(&window);
chatWindow->setReadOnly(true);
chatWindow->setStyleSheet("QTextEdit { border: none; }");
mainLayout->addWidget(chatWindow);
// 显示窗口
window.show();
return app.exec();
}
```
这个示例代码创建了一个简单的QQ窗体样式,包括顶部工具栏、左侧联系人列表和右侧聊天窗口。你可以根据自己的需要进行修改和扩展。
阅读全文