crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> data() MVC из скрипта возможно ?, Прицепить data() MVC к скрипту !?
JohnZ
  опции профиля:
сообщение 3.7.2017, 17:30
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 139
Регистрация: 19.7.2014
Пользователь №: 4190

Спасибо сказали: 10 раз(а)




Репутация:   0  


Со старта прошу не пинать за то что ( возможно !) не в том разделе задаю вопрос, т.к. вероятнее всего это из раздела MVC.

Задача следующая, - есть класс формы с указателем на её модельку ...
Раскрывающийся текст

class fpTForma : public QDialog
{
Q_OBJECT

public:

Q_INVOKABLE fpTForma(int id, MainWindow *parent = 0, Qt::WindowFlags f = 0);
~fpTForma();

public slots:

Q_INVOKABLE bool initForm(int fpCmd = 0);
Q_INVOKABLE MainWindow *getParent() { return mParent; }
Q_INVOKABLE int getCurRow() { return curIndex.isValid() ? curIndex.row() : -1; }
Q_INVOKABLE QVariant getCurValue(int col);
Q_INVOKABLE QVariant getCurValue(const QString & name);
Q_INVOKABLE bool match(int col, QVariant value);
Q_INVOKABLE bool match2(int col, int col1, QVariant value, QVariant value1);
Q_INVOKABLE void refresh() { model->select(); }
Q_INVOKABLE void setSort(int colnum, int order, bool sel = false);
Q_INVOKABLE int exec();

// .... etc

protected slots:

void closeEvent(QCloseEvent *event);
void keyPressEvent (QKeyEvent *event);
void setCurrentModelIndex(const QModelIndex &idx);

// .... etc

protected:

QScriptEngine *engine; // ссылка на интерпретатор скрипта.
MainWindow *mParent;
QTableView *viewChild; // QTableView на этой форме

fpTableModel *model; // Форма работает с Таблицей !!!

QModelIndex curIndex;
QSqlRecord curRecord;
QDataWidgetMapper *dataMapper;

// .... etc
};


Он фактически выполняет роль Контроллера в MVC. В скрипте эти объекты видны как frmXXX.
Задача состоит в том, что-бы из скрипта "прицепить" к его модели ф-цию data() для подмены колонок в View !?
Вроде-бы когда-то видел такое в и-нете, но не уверен. Возможно-ли такое сделать ? Подскажите PLZ ...

Сообщение отредактировал JohnZ - 3.7.2017, 17:38
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- JohnZ   data() MVC из скрипта возможно ?   3.7.2017, 17:30
- - lanz   Плюсовые объекты из скрипта менять не получится км...   3.7.2017, 18:39
- - JohnZ   Цитата(lanz @ 3.7.2017, 18:39) Плюсовые о...   4.7.2017, 11:36
- - lanz   Цитата(JohnZ @ 4.7.2017, 11:36) А сама fp...   4.7.2017, 12:17
- - JohnZ   Цитата(lanz @ 4.7.2017, 12:17) Цитата(Joh...   4.7.2017, 13:35
- - lanz   См. приложение. ЦитатаДык по-любому все объекты по...   5.7.2017, 11:09
- - JohnZ   Цитата(lanz @ 5.7.2017, 11:09) См. прилож...   5.7.2017, 15:07
- - lanz   Цитата(JohnZ @ 5.7.2017, 15:07) ... или з...   5.7.2017, 17:18
- - JohnZ   Цитата(lanz @ 5.7.2017, 17:18) Цитата(Joh...   5.7.2017, 22:15
- - lanz   Цитата(JohnZ @ 5.7.2017, 22:15) Если снят...   6.7.2017, 9:21
- - JohnZ   Цитата(lanz @ 6.7.2017, 9:21) Цитата(John...   6.7.2017, 12:06
- - lanz   Цитата(JohnZ @ 6.7.2017, 12:06) Это уже п...   6.7.2017, 13:16
- - JohnZ   Цитата(lanz @ 6.7.2017, 13:16) Цитата(Joh...   6.7.2017, 14:25
- - lanz   Цитата(JohnZ @ 6.7.2017, 14:25) Дык тепер...   6.7.2017, 17:20
- - JohnZ   Вот уже почти и добрались до решения проблемы Ц...   7.7.2017, 11:27
- - lanz   Цитата(JohnZ @ 7.7.2017, 11:27) И как в п...   7.7.2017, 13:49
- - JohnZ   Погодь lanz, не убегай А какая у тебя QT-я ? У мн...   7.7.2017, 17:34
- - lanz   Цитата(JohnZ @ 7.7.2017, 17:34) У тебя ли...   7.7.2017, 18:36
- - JohnZ   Цитата(lanz @ 7.7.2017, 18:36) Цитата(Joh...   9.7.2017, 19:56
- - lanz   Цитата(JohnZ @ 9.7.2017, 19:56) А так мож...   9.7.2017, 23:56
- - JohnZ   Lanz, а не подскажешь как можно передать в скрипто...   14.7.2017, 12:24
- - lanz   Было ИТТ, ну! engine->newVariant(inde...   14.7.2017, 12:41
- - JohnZ   Помнишь фильм "Напарник" Л.Гайдая ? - Р...   14.7.2017, 12:50


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.3.2024, 15:52