資源簡介
提供Qt實現Flat樣式效果的常用控件,多達50多個常用控件。ToolBar、ToolButton、SplitView、LineEdit、PushButton等等。

代碼片段和文件信息
/**
MIT?License
Copyright?(c)?2018?Michael?Scopchanov
Permission?is?hereby?granted?free?of?charge?to?any?person?obtaining?a?copy
of?this?software?and?associated?documentation?files?(the?“Software“)?to?deal
in?the?Software?without?restriction?including?without?limitation?the?rights
to?use?copy?modify?merge?publish?distribute?sublicense?and/or?sell
copies?of?the?Software?and?to?permit?persons?to?whom?the?Software?is
furnished?to?do?so?subject?to?the?following?conditions:
The?above?copyright?notice?and?this?permission?notice?shall?be?included?in?all
copies?or?substantial?portions?of?the?Software.
THE?SOFTWARE?IS?PROVIDED?“AS?IS“?WITHOUT?WARRANTY?OF?ANY?KIND?EXPRESS?OR
IMPLIED?INCLUDING?BUT?NOT?LIMITED?TO?THE?WARRANTIES?OF?MERCHANTABILITY
FITNESS?FOR?A?PARTICULAR?PURPOSE?AND?NONINFRINGEMENT.?IN?NO?EVENT?SHALL?THE
AUTHORS?OR?COPYRIGHT?HOLDERS?BE?LIABLE?FOR?ANY?CLAIM?DAMAGES?OR?OTHER
LIABILITY?WHETHER?IN?AN?ACTION?OF?CONTRACT?TORT?OR?OTHERWISE?ARISING?FROM
OUT?OF?OR?IN?CONNECTION?WITH?THE?SOFTWARE?OR?THE?USE?OR?OTHER?DEALINGS?IN?THE
SOFTWARE.
*/
#include?“AbstractButton.h“
#include?yle>
#include?
#include?
#include?
/*!
?*?\class?AbstractButton
?*?\inmodule?FlatGui
?*?\brief?base?class?for?all?buttons.
?*/
AbstractButton::AbstractButton(QWidget?*parent)?:
QWidget(parent)
m_pressed(false)
m_down(false)
{
setFocusPolicy(Qt::FocusPolicy(style()->styleHint(Qstyle::SH_Button_FocusPolicy)));
setSizePolicy(QSizePolicy(QSizePolicy::Minimum?QSizePolicy::Fixed?QSizePolicy::DefaultType));
setAttribute(Qt::WA_WState_OwnSizePolicy?false);
setForegroundRole(QPalette::ButtonText);
setBackgroundRole(QPalette::Button);
}
bool?AbstractButton::event(QEvent?*event)
{
if?(!isEnabled())?{
switch(event->type())?{
case?QEvent::TabletPress:
case?QEvent::TabletRelease:
case?QEvent::TabletMove:
case?QEvent::MouseButtonPress:
case?QEvent::MouseButtonRelease:
case?QEvent::MouseButtondblclick:
case?QEvent::MouseMove:
case?QEvent::HoverMove:
case?QEvent::HoverEnter:
case?QEvent::HoverLeave:
case?QEvent::ContextMenu:
return?true;
default:
break;
}
}
return?QWidget::event(event);
}
void?AbstractButton::actionEvent(QActionEvent?*event)
{
QAction?*action?=?event->action();
if?(!action)
return;
QWidget::actionEvent(event);
connect(this?&AbstractButton::clicked?action?&QAction::trigger);
}
void?AbstractButton::mousePressEvent(QMouseEvent?*event)
{
if?(event->button()?!=?Qt::LeftButton)?{
event->ignore();
return;
}
if?(clickArea().contains(event->pos()))?{
setDown(true);
m_pressed?=?true;
repaint();
event->accept();
}?else?{
event->ignore();
}
}
void?AbstractButton::mouseReleaseEvent(QMouseEvent?*event)
{
m_pressed?=?false;
if?(event->button()?!=?Qt::LeftButton)?{
event->ignore();
return;
}
if?(!m_down)?{
event->ignore();
return;
}
if?(clickArea().contains(event->pos()))?{
m_down?=?false;
repaint();
doClick();
e
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-01-25?18:22??flat-gui-master\
?????文件?????????378??2018-01-25?18:22??flat-gui-master\.gitattributes
?????文件?????????204??2018-01-25?18:22??flat-gui-master\.gitignore
?????文件????????3569??2018-01-25?18:22??flat-gui-master\AbstractButton.cpp
?????文件????????1775??2018-01-25?18:22??flat-gui-master\AbstractButton.h
?????文件????????1783??2018-01-25?18:22??flat-gui-master\AbstractDataModel.cpp
?????文件????????2022??2018-01-25?18:22??flat-gui-master\AbstractDataModel.h
?????文件????????1372??2018-01-25?18:22??flat-gui-master\AbstractDataModel_p.h
?????文件????????1297??2018-01-25?18:22??flat-gui-master\AbstractDecoration.cpp
?????文件????????1384??2018-01-25?18:22??flat-gui-master\AbstractDecoration.h
?????文件????????2061??2018-01-25?18:22??flat-gui-master\AbstractEditor.cpp
?????文件????????1737??2018-01-25?18:22??flat-gui-master\AbstractEditor.h
?????文件????????1313??2018-01-25?18:22??flat-gui-master\AbstractEditor_p.h
?????文件????????7012??2018-01-25?18:22??flat-gui-master\AbstractField.cpp
?????文件????????2292??2018-01-25?18:22??flat-gui-master\AbstractField.h
?????文件????????1491??2018-01-25?18:22??flat-gui-master\AbstractField_p.h
?????文件????????1706??2018-01-25?18:22??flat-gui-master\AbstractPanel.cpp
?????文件????????1462??2018-01-25?18:22??flat-gui-master\AbstractPanel.h
?????文件????????1292??2018-01-25?18:22??flat-gui-master\AbstractValidator.cpp
?????文件????????1370??2018-01-25?18:22??flat-gui-master\AbstractValidator.h
?????文件????????1756??2018-01-25?18:22??flat-gui-master\ActionNavigate.cpp
?????文件????????1533??2018-01-25?18:22??flat-gui-master\ActionNavigate.h
?????文件????????1335??2018-01-25?18:22??flat-gui-master\ActionNavigate_p.h
?????文件????????5731??2018-01-25?18:22??flat-gui-master\Alert.cpp
?????文件????????1871??2018-01-25?18:22??flat-gui-master\Alert.h
?????文件????????1412??2018-01-25?18:22??flat-gui-master\Alert_p.h
?????文件????????2512??2018-01-25?18:22??flat-gui-master\ButtonCategory.cpp
?????文件????????1548??2018-01-25?18:22??flat-gui-master\ButtonCategory.h
?????文件????????1334??2018-01-25?18:22??flat-gui-master\ButtonCategory_p.h
?????文件????????2574??2018-01-25?18:22??flat-gui-master\DateDataModel.cpp
?????文件????????1779??2018-01-25?18:22??flat-gui-master\DateDataModel.h
............此處省略116個文件信息
- 上一篇:UML嵌入式系統設計
- 下一篇:EasyWine3RC2.zip
評論
共有 條評論