如何创建一个三角形的QWidget
?
它必须是QWidget
,因为它将被包含在另一个小部件中,必须是可点击的并且将执行一些动画(但是在这第一次我只需要创建三角形形状)。
这样的事情:
我正在使用Qt 5.3
答案 0 :(得分:3)
这里有一个例子。希望它有所帮助。
widget.h:
setInterval(function() {
var date = new Date();
if(date.getHours() == 0 && date.getMinutes() == 0){
setInterval(calcFunction, 900000);
}
}, 60000);
var calcFunction = function() {
var myValue = 0;
if(date1.getHours() == 0 && date1.getMinutes() == 0) {// Check for midnight
myValue = 0; // resets value
} else {
myValue=myValue + Math.random();
}
console("Value: " + myValue);
};
widget.cpp:
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QPainterPath>
#include <QPoint>
#include <QVector>
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
protected:
void paintEvent(QPaintEvent *event) override;
private:
QPainterPath getPath() const;
QRegion getRegion() const;
private:
int width = 100;
int height = 100;
QVector<QPoint> points;
};
#endif // WIDGET_H