通过鼠标来选中图形,一般都两种方式:
本文先来实现框选的第一部分,那就是绘制出按住鼠标左键拖动形成的矩形框。
void |
drawRect(const QRectF &rectangle) |
void |
drawRect(int x, int y, int width, int height) |
void |
drawRect(const QRect &rectangle) |
void |
drawRects(const QRectF *rectangles, int rectCount) |
void |
drawRects(const QVector |
void |
drawRects(const QRect *rectangles, int rectCount) |
void |
drawRects(const QVector |
Qt提供了详尽的文档,以上为QPaiter绘制矩形的接口,可以根据实际的需要选择最方便的接口使用就可以了。
封装几何矩形有几种定义形式:
这里我们暂用第一种方式来实现矩形类的封装,至于内存和performance的优化我们则在后续开发中考虑。
- /// j-geometry-rect.h
-
- #pragma once
-
- #include "j-geometry.h"
- #include "j-geometry-point.h"
- #include
-
- namespace JNSGeometry {
- class JGeoRect : public JGeometry {
- public:
- JGeoRect();
- JGeoRect(const JGeoPoint &pos, double width, double height);
- JGeoRect(const JGeoRect &rect);
- JGeoRect &operator=(const JGeoRect &rect);
- bool IsGeoRect