資源簡介
采用QT開發 登錄界面 仿QQ,相似度接近百分99,搜集網上資源整合開發。
代碼片段和文件信息
#include?“basewindow.h“
#include?
#include?
#include?
#include?
#include?yleOption>
baseWindow::baseWindow(QWidget?*parent)
:?QDialog(parent)
{
//?framelessWindowHint屬性設置窗口去除邊框;
//?WindowMinimizeButtonHint?屬性設置在窗口最小化時,點擊任務欄窗口可以顯示出原窗口;
//Qt::WindowFlags?flag?=?this->windowFlags();
this->setWindowFlags(Qt::framelessWindowHint?|?Qt::WindowMinimizeButtonHint);
//?設置窗口背景透明;
setAttribute(Qt::WA_TranslucentBackground);
//?關閉窗口時釋放資源;
//setAttribute(Qt::WA_DeleteOnClose);
//?初始化標題欄;
inittitleBar();
}
baseWindow::~baseWindow()
{
}
void?baseWindow::inittitleBar()
{
m_titleBar?=?new?MytitleBar(this);
m_titleBar->move(0?0);
connect(m_titleBar?SIGNAL(signalButtonMinClicked())?this?SLOT(onButtonMinClicked()));
connect(m_titleBar?SIGNAL(signalButtonRestoreClicked())?this?SLOT(onButtonRestoreClicked()));
connect(m_titleBar?SIGNAL(signalButtonMaxClicked())?this?SLOT(onButtonMaxClicked()));
connect(m_titleBar?SIGNAL(signalButtonCloseClicked())?this?SLOT(onButtonCloseClicked()));
}
void?baseWindow::paintEvent(QPaintEvent*?event)
{
Q_UNUSED(event);
QstyleOption?opt;
opt.init(this);
QPainter?painter(this);
style()->drawPrimitive(Qstyle::PE_Widget?&opt?&painter?this);
//設置背景色;
QPainterPath?pathBack;
pathBack.setFillRule(Qt::WindingFill);
pathBack.addRoundedRect(QRect(0?0?this->width()?this->height())?3?3);
painter.setRenderHint(QPainter::SmoothPixmapTransform?true);
painter.fillPath(pathBack?QBrush(QColor(236?241?245)));
// return?QWidget::paintEvent(event);
}
void?baseWindow::loadstyleSheet(const?QString?&sheetName)
{
QFile?file(sheetName);
file.open(QFile::ReadOnly);
if?(file.isOpen())
{
QString?styleSheet?=?this->styleSheet();
styleSheet?+=?QLatin1String(file.readAll());
this->setstyleSheet(styleSheet);
}
}
void?baseWindow::onButtonMinClicked()
{
if?(Qt::Tool?==?(windowFlags()?&?Qt::Tool))
{
hide();????//設置了Qt::Tool?如果調用showMinimized()則窗口就銷毀了???
}
else
{
showMinimized();
}
}
void?baseWindow::onButtonRestoreClicked()
{
QPoint?windowPos;
QSize?windowSize;
m_titleBar->getRestoreInfo(windowPos?windowSize);
this->setGeometry(QRect(windowPos?windowSize));
}
void?baseWindow::onButtonMaxClicked()
{
m_titleBar->saveRestoreInfo(this->pos()?QSize(this->width()?this->height()));
QRect?desktopRect?=?QApplication::desktop()->availableGeometry();
QRect?FactRect?=?QRect(desktopRect.x()?-?3?desktopRect.y()?-?3?desktopRect.width()?+?6?desktopRect.height()?+?6);
setGeometry(FactRect);
}
void?baseWindow::onButtonCloseClicked()
{
//?注意?!!!;
//?如果設置了Qt::Tool?且當前窗口為主窗口調用close()方法只是關閉了當前窗口,并沒有結束整個程序進程;
//?如果只有一個窗口情況下需要調用qApp->quit();來結束進程;
//?如果設置了Qt::Tool的窗口是子窗口,則只需要調用close()方法關閉即可;
//? if?(Qt::Tool?==?(windowFlags()?&?Qt::Tool))
//? {
//? qApp->quit();
//? }
//? else
{
close();
}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3145??2016-12-22?10:46??LoginWindow\LoginWindow\ba
?????文件????????543??2016-12-21?21:05??LoginWindow\LoginWindow\ba
?????文件???????4060??2016-12-22?18:46??LoginWindow\LoginWindow\GeneratedFiles\Debug\moc_ba
?????文件???????2734??2016-12-22?18:46??LoginWindow\LoginWindow\GeneratedFiles\Debug\moc_loginwindow.cpp
?????文件???????6756??2016-12-22?18:46??LoginWindow\LoginWindow\GeneratedFiles\Debug\moc_myti
?????文件????6556315??2016-12-22?18:46??LoginWindow\LoginWindow\GeneratedFiles\qrc_loginwindow.cpp
?????文件???????8065??2016-12-22?18:46??LoginWindow\LoginWindow\GeneratedFiles\ui_loginwindow.h
?????文件???????2079??2016-12-22?18:47??LoginWindow\LoginWindow\loginwindow.cpp
?????文件????????646??2016-12-22?18:33??LoginWindow\LoginWindow\loginwindow.h
?????文件???????1236??2016-12-22?17:00??LoginWindow\LoginWindow\loginwindow.qrc
?????文件???????8157??2016-12-22?17:13??LoginWindow\LoginWindow\loginwindow.ui
?????文件??????14722??2016-12-22?18:47??LoginWindow\LoginWindow\LoginWindow.vcxproj
?????文件???????3631??2016-12-22?18:47??LoginWindow\LoginWindow\LoginWindow.vcxproj.filters
?????文件????????659??2016-12-22?16:21??LoginWindow\LoginWindow\LoginWindow.vcxproj.user
?????文件????????181??2016-12-21?20:44??LoginWindow\LoginWindow\main.cpp
?????文件???????8021??2016-12-22?09:53??LoginWindow\LoginWindow\myti
?????文件???????2567??2016-12-21?21:10??LoginWindow\LoginWindow\myti
?????文件???????3429??2016-12-22?09:47??LoginWindow\LoginWindow\Resources\LoginWindow\arrowback.png
?????文件????1216750??2016-12-21?21:58??LoginWindow\LoginWindow\Resources\LoginWindow\back.gif
?????文件????????317??2016-01-21?13:58??LoginWindow\LoginWindow\Resources\LoginWindow\checkbox.png
?????文件????????296??2016-01-21?15:23??LoginWindow\LoginWindow\Resources\LoginWindow\drop_down_Button.png
?????文件????????516??2016-01-21?14:02??LoginWindow\LoginWindow\Resources\LoginWindow\flicker.png
?????文件???????8840??2016-12-22?10:10??LoginWindow\LoginWindow\Resources\LoginWindow\HeadImage.png
?????文件???????3360??2016-12-22?16:59??LoginWindow\LoginWindow\Resources\LoginWindow\keyboard.png
?????文件???????2966??2016-12-22?16:12??LoginWindow\LoginWindow\Resources\LoginWindow\keyboard_hover.png
?????文件???????2964??2016-12-22?16:14??LoginWindow\LoginWindow\Resources\LoginWindow\keyboard_press.png
?????文件???????3201??2016-12-22?10:28??LoginWindow\LoginWindow\Resources\LoginWindow\LoginState\state_away.png
?????文件???????3093??2016-12-22?10:31??LoginWindow\LoginWindow\Resources\LoginWindow\LoginState\state_busy.png
?????文件???????3087??2016-12-22?10:34??LoginWindow\LoginWindow\Resources\LoginWindow\LoginState\state_hide.png
?????文件???????3236??2016-12-22?10:35??LoginWindow\LoginWindow\Resources\LoginWindow\LoginState\state_notdisturb.png
............此處省略41個文件信息
評論
共有 條評論