Автор: AntonTatu 16.12.2010, 12:09
Запутался совсем, можно ли в моем случае использовать модель / представление для ввода данных, подтолкните в правильном направлении..
Задача такая, есть класс в который необходимо записывать следующие данные данные:
class myclass
{
public:
myclass();
~myclass();
QString numgrup; //название группы
QString modelgrup; //используемая модель
QString spisokuzlov; //список узлов
QVector < QVector <QString> > parametri; //параметры модели
};
в конце концов на выходе из программы должен получится вектор содержащий столько введенных групп сколько необходимо пользователю..
QVector <myclass> vec_dannih;
ввод данных осуществляется в следующем диалоге:
причем для каждой группы таблица заполняется в зависимости от того сколько чисел введено в список узлов, к примеру если ввели 3 числа, то в таблице будет 3 строчки, если 5 чисел то 5 строчек....
вот пока что сделал, а дальше просто в ступоре.... очень помощь нужна...
dialogOOP.zip ( 5.21 килобайт )
: 145
Автор: wiz29 16.12.2010, 12:38
QItemDelegate должен помоч с твоей задачей.
Автор: AntonTatu 16.12.2010, 15:28
Цитата(wiz29 @ 16.12.2010, 12:38)
QItemDelegate должен помоч с твоей задачей.
может кто то делал что то подобное, я уже кучу примеров из Асиситента просмотрел, ничего понять не могу....
Автор: wiz29 16.12.2010, 16:19
Попробуй тогда QTableWidget использовать, если сложно или лень разбираться в модель/представлении. Там все попроще.
Автор: AntonTatu 16.12.2010, 16:45
Цитата(wiz29 @ 16.12.2010, 16:19)
Попробуй тогда QTableWidget использовать, если сложно или лень разбираться в модель/представлении. Там все попроще.
дело не в лень..., знаний не хватает... придется опять велосипед изобретать... (который у меня будет уже итак не первый) ну к примеру как вариант:
использовать созданный вектор - класса для хранения введенных вариантов
при нажатии new сделать его ресайз на 1, и заносить в него все введенные значения с формы
нужную мне таблицу делать из QTableWidget (увеличивать количество строчек в таблице по сигналам-слотам или с помощью делегата для "поля ввода списка узла группы") и при создании новой группы заносить введенную инфу из таблице так же в vec_dannih.at(i).parametri
ну конечно еще и сигналы - слоты еще какие нибудь наверно прикручивать придется....
но мне кажется можно все это сделать более "правильно - понятно", а вот модель - представление не осилить....
PS: но все равно wiz29 спасибо за участие...
Автор: wiz29 16.12.2010, 18:19
ну дык Qt не предоставляет решения на все случаи жизни Что то нужно написать и самому
Автор: FantasyOr 17.12.2010, 15:37
Вопрос к AntonTatu, зачем вы используете vector, у Вас динамический массив "...при нажатии new сделать его ресайз на 1, и заносить в него все введен...", Qt обладает прекрасным классом QList<T>
QList<T> myTList;
T newT1;
T newT2;
T newT3;
myTList <<newT1 <<newT2 <<newT3;
модель-представление в к Вашей задачи как раз подойдет, т.б все равно придется разбираться с этим механизмом.
Если я в чем-то ошибаюсь, то профи меня поправят
Автор: Гость_AntonTatu_* 17.12.2010, 19:40
Цитата(FantasyOr @ 17.12.2010, 15:37)
Вопрос к AntonTatu, зачем вы используете vector, у Вас динамический массив "...при нажатии new сделать его ресайз на 1, и заносить в него все введен...", Qt обладает прекрасным классом QList<T>
QList<T> myTList;
T newT1;
T newT2;
T newT3;
myTList <<newT1 <<newT2 <<newT3;
модель-представление в к Вашей задачи как раз подойдет, т.б все равно придется разбираться с этим механизмом.
Если я в чем-то ошибаюсь, то профи меня поправят
спс, я сегодня уже подумал что QList будет лучше использовать, пытаюсь сделать "велосипед", пока не понял как с моделью представлением мою задачу решить...