Начал изучать qt и почти в самом начале наткнулся на фигню которую никак не могу понять.
Выбрал qdevelop в качестве IDE. Сделал формочку с помощью qt designer.
на формочке - один виджет (Graph).
После сборки у меня сгенерился вот такой код:
class Ui_MainWindow
{
public:
...
QWidget *Graph;
...
void setupUi(QMainWindow *MainWindow)
{
...
centralwidget = new QWidget(MainWindow);
...
Graph = new QWidget(centralwidget);
...
QMetaObject::connectSlotsByName(MainWindow);
}
};
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui
Этот код сгенерен и менять его я как-бы не могу.
Теперь я хочу переопределить paintEvent() у Graph чтобы что-нибудь там нарисовать.
Но беда в том, что мне получается доступен для изменения только экземпляр класса QWidget, которого зовут *Graph.
Как мне переопределить paintEvent у *Graph?
Переписывать весь setupUi заново? (при любой модификации формы придётся заниматься каждый раз копипастингом)
Или qt designer годится только для того чтобы сделать формочку, взять нагенеренный код и менять его? (думаю всё не так всё же)