Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Использование файлов Qt Designer'а
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt инструментарий
Litkevich Yuriy
Люди поделитесь, кто каким способом использует файл дизайнера.
Я делаю так, положим файл называется mydialog.ui, класс называется MyDialog, а унаследован он от QDialog. Тогда я делаю два файла:
mydialog.cpp:
#include <QtGui>
#include "mydialog.h"
MyDialog::MyDialog(QDialog* p_parent) : QDialog(p_parent)
{
    setupUi(this);
    setWindowTitle(tr("Тестовое окно"));
}

mydialog.h:
#ifndef MYDIALOG_H
#define MYDIALOG_H
#include "ui_mydialog.h"
class MyDialog : public QDialog, public Ui::MyDialog
{
    Q_OBJECT

public:
    MyDialog(QDialog *p_parent = 0);

};
#endif //MYDIALOG_H


и делаю это все ручками, ну т.е. из заготовки. Кто-нибудь еще делает как я?
ViGOur
Неа, я например деляю все руками (без дизайнера), халява конечно же хорошо, но лучше до конца понимать, что и как делается.
Но должно быть примерно так. :)

А что тебя в этом не устраивает или настораживает?
Litkevich Yuriy
да я утилиту вчера накропал, назвал ycg (Yurik's code generator) :) и вот думаю, а вдруг в Qt'ях уже что-то такое есть.
утилита консольная пускается так:
ycg mydialog.ui
и делает два файла, как указаны мной в первом посте.
Т.е. имена выходных файлов повторяют входной без расширения, имя создаваемого и родительского класса читаются из ui-файла (спасибо тебе и Tonal'у за шпоргалку).
Я ее в %QTDIR%/bin положил, и настроил свой PN2 чтобы он для файлов *.ui ее запускал.

Если кому интересно могу дать исходники.
Litkevich Yuriy
исходник ycg
если вдруг кому пригодится
AD
Цитата(Litkevich Yuriy @ 15.8.2008, 20:36) *
исходник ycg
если вдруг кому пригодится

К сожалению, Visual не разделяет .h и .cpp! Приходится делать это ручками! Была бы возможность, прикрутил бы другой uic-шник (не вижуаловский)!
Litkevich Yuriy
Цитата(AD @ 16.8.2008, 1:53) *
Visual не разделяет .h и .cpp

что это значит?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.