У меня есть самая простая из программ Qt - главное окно. Я хочу иметь возможность использовать QPainter для рисования некоторых линий - на самом деле не более чем линии (я пытаюсь построить гистограмму). Во всяком случае, я читал примеры кода, но по какой-то причине мой код не работает.
У меня есть mainwindow.ui, который создает класс с именем MainWindow, который я не показывал — это просто QMainWindow с QWidget на нем, но я скрываю QWidget, так как сейчас им не пользуюсь. main.cc также не показан, поскольку это стандартный файл main.cc для небольшого проекта. Остальная часть кода:
mainwindow.cc
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QWidget>
#include <QPainter>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent)
{
setupUi(this);
drawingArea->hide();
QPainter painter(this);
painter.begin(this);
QColor color (100, 100, 100);
painter.setBrush(color);
painter.drawLine(0,0,10,10);
}
MainWindow::~MainWindow()
{
}
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "ui_mainwindow.h"
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow, private Ui::MainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
};
#endif // MAINWINDOW_H