资源简介
提供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
相关资源
- 酒店管理系统基于Qt Creator5)
- layui后台管理模板
- 嵌入式图形界面MiniGUI的示例程序9例
- PowerBuilder*图书馆管理系统*需求分析
- 十以内加减法练习 powerbuilder源码
- pb 实现仿BS界面 dw菜单 powerbuild
- STM32基于rt_thread操作系统的SDHC卡文件
- vtk QT做的三维地质可视化系统2of2
- DOS播放器 QuickViewPro破解版
- Qt局域网聊天软件
- Qt Creator opengl实现四元数鼠标控制轨迹
- QT局域网聊天系统(基于QT5.修改过)
- qt-电子点菜系统
- GUI银行管理系统
- 分治法快速排序算法QuickSort C
- STM32F103RBT6驱动UC1698控制芯片的160160黑
- ADNS-3080光流传感器测试程序Arduino
- C 餐厅叫号系统(QT平)
- QT 实现文件下载
- qt图像处理
- powerbuilder获取本地IP地址或主机名
- QT,JPEG解码源代码(已完成)
- Qt 播放音频文件
- pb (powerbuilder) 编写的自动转台控制
- powerbuilder 计算器小程序
- 拼图游戏源代码 powerbuilder 9.0实例
- 仿126 网易 163 邮箱 界面
- 用PB编写俄罗斯方块
- 《PowerBuilder9.0实用教程》的实例源代
- Qt 读取16进制的data文件
评论
共有 条评论