DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DAPenStyleComboBox.h
1#ifndef DAPENSTYLECOMBOBOX_H
2#define DAPENSTYLECOMBOBOX_H
3#include "DACommonWidgetsAPI.h"
4#include <QComboBox>
5#include <QAbstractItemDelegate>
6#define DAPENSTYLECOMBOBOX_USE_DELEGATE 0
7
8namespace DA
9{
10
14class DACOMMONWIDGETS_API DAPenStyleComboBox : public QComboBox
15{
16 Q_OBJECT
17#if !DAPENSTYLECOMBOBOX_USE_DELEGATE
18 DA_DECLARE_PRIVATE(DAPenStyleComboBox)
19#endif
20public:
21 DAPenStyleComboBox(QWidget* parent = Q_NULLPTR);
23
24 // 画笔样式转换为字符串
25 static QString penStyleToString(Qt::PenStyle s);
26
27 // 生成icon
28 QIcon generatePenIcon(Qt::PenStyle s) const;
29 // 绘制画笔
30 static void drawPenStyle(QPainter* painter, const QRect& rect, const QPen& pen);
31 // 刷新所有item
32 void updateItems();
33 // 是否在样式上显示文字
34 void setStyleTextVisible(bool on);
35 bool isStyleTextVisible() const;
36 // 重建所有items
37 void rebuildItems();
38 // 获取当前的画笔类型
39 Qt::PenStyle getCurrentPenStyle() const;
40
41public slots:
42 // 设置画笔
43 void setPen(const QPen& p);
44 // 设置绘制的线条的颜色
45 void setPenColor(const QColor& c);
46 // 设置绘制的画笔宽度
47 void setPenLineWidth(int w);
48 // 设置当前的画笔样式
49 void setCurrentPenStyle(Qt::PenStyle s);
50
51protected:
52 // 添加item
53 void addItem(Qt::PenStyle s);
54private slots:
55 void onCurrentIndexChanged(int index);
56signals:
61 void currentPenStyleChanged(Qt::PenStyle s);
62};
63
64} // namespace DA
65#endif // DAPENSTYLECOMBOBOX_H
Qt::PenStyle for QComboBox
Definition DAPenStyleComboBox.h:15
void currentPenStyleChanged(Qt::PenStyle s)
画笔样式改变
序列化类都是带异常的,使用中需要处理异常
Definition AppMainWindow.cpp:44