Russian Qt Forum
Мая 13, 2025, 03:20 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: [1]
1  Qt / Многопоточное программирование, процессы / Re: Простое взаимодействие 2-х приложений : Ноября 16, 2011, 11:08
а что мешает использовать 127.0.0.1 и какой-нито подходящий свободный порт? Ничем не хуже dbus...
2  Qt / Qt Embedded / Re: Можно ли собирать проекты под ARM в QT Creator??? : Октября 07, 2011, 06:29
Конечно можно. Вот например посмотри здесь краткую инструкцию: http://processors.wiki.ti.com/index.php/Building_Qt. Под виндой я не пользовал, а вот под Линуксом без проблем собирается Qt под BuildRoot и тогда остается только определить путь к qmake с кросскомпилятором...
3  Компиляторы и платформы / Linux / Re: libUSB linux : Февраля 11, 2011, 08:38
Из своего опыта работы с libusb могу сказать две вещи:

1. До вызова open() надо вызвать libusb_claim_interface(...) (найдешь в документации по libusb какие у нее параметры)

2. libusb требует прав на запись, поэтому в Ubuntu это делается так:
    в /etc/udev/rules.d   надо создать файл с определением доступа к устройству c именем типа 70-udev-libusb.rules.
    и содержащим вот такую строку:

# ez-usb device nodes
ACTION=="add", SUBSYSTEM=="usb", SYSFS{idVendor}=="04b4", SYSFS{idProduct}=="1004", MODE="0777"

ну по смыслу думаю понятно, что где надо подставить в твоем случае.
Как в других Линуксах  - надо смотреть доки
4  Qt / Пользовательский интерфейс (GUI) / Re: вертикальный header для QTreeView : Августа 19, 2010, 07:03
Вот это спасибо! Как все просто-то... и точно, можно комбинировать разные вью - таблицы с таблицами, таблицы с деревьями и деревья с деревьями...
5  Qt / Пользовательский интерфейс (GUI) / Re: вертикальный header для QTreeView : Августа 18, 2010, 16:57
о! это интересный вариант... а не подскажете как это реализуется (два дерева рядом)? Я так понимаю, если просто расположить два виджета рядышком ( в одном layout), то необходима какая-никакая построчная синхронизация при скроллинге... А может есть более симпатичный вариант? Такое объединение виджетов было бы очень полезным инструментом..
6  Qt / Пользовательский интерфейс (GUI) / Re: вертикальный header для QTreeView : Августа 18, 2010, 08:30
Спасибо конечно, но это первое что посмотрел  Улыбающийся... вроде как у "чистого" QTreeView определен только один QHeaderView и эта функция просто его заменяет, а мне нужно фактически добавить еще один - вертикальный. Задача конечно несколько проще - мне бы только выделить первую колонку во view для своих целей, а собственно дерево рисовать начиная со второй. Вроде как вертикальный хидер решил бы задачку... Может кто знает как сместить прорисовку дерева начиная со второй колонки?
7  Qt / Пользовательский интерфейс (GUI) / вертикальный header для QTreeView : Августа 13, 2010, 15:13
Парни, кто знает как реализовать вертикальный header для QTreeView? Что-то ничего не нашел на форумах...
8  Qt / Базы данных / Re: Вопрос к экспертам по QSqlRelationalTableModel... : Мая 18, 2010, 09:39
Спасибо за совет, но просто select(), а так же и reset() не помогают... но все-таки я нашел решение: при добавлении новой записи в первую таблицу надо выполнить следующий апдейт для модели второй таблицы:
Код:
	relationModel(1)->select();
relationModel(2)->select();
submitAll();

и именно без select(). Не очень понимаю при чем тут submitAll(), и почему select() вреден, но это работает  Улыбающийся правда только в режиме OnManualSubmit. В режимах OnFieldChange и OnRowChange - та же проблема.
9  Qt / Базы данных / Вопрос к экспертам по QSqlRelationalTableModel... : Мая 16, 2010, 09:58
Вот с такой проблемой я столкнулся (Qt 4.6.2, база - SQLite): есть две таблицы:

stations:
id_sub - primary key
name - TEXT

lines:
id - primary key
id_sub1 - INTEGER
id_sub2 - INTEGER
data - TEXT

Для первой таблицы создаю модель от QSqlTableModel и в качестве view использую QComboBox (m_station):

Код:
		m_pStationModel = new QSqlTableModel(this, m_db);
m_station.setModel(m_pStationModel);
m_station.setModelColumn(1);

Для второй таблицы создаю модель от QSqlRelationalTableModel и в качестве view строю таблицу m_pTable... В конструкторе модели строю связку:

Код:
QLinesSqlModel::QLinesSqlModel(int id, QObject *parent, QSqlDatabase db) : QSqlRelationalTableModel(parent, db)
{
setTable("lines");
setRelation(1,  QSqlRelation("stations", "id", "name"));
setRelation(2,  QSqlRelation("stations", "id", "name"));
setFilter(QString("lines.id_sub1 = %1").arg(id));
select();

ну и собственно часть кода, где эта модель используется:

Код:
		m_pLinesModel = new QLinesSqlModel(m_station_id, this, m_db);
m_pLinesModel->setEditStrategy(QSqlTableModel::OnRowChange);
m_pTable->setModel(m_pLinesModel);
m_pTable->setItemDelegate(new QSqlRelationalDelegate(this));

Все работает замечательно, во второй и третьей колонках view при редактировании виден комбо-бокс, там список имен из первой таблицы, строки вставляются... все ок.

Но вот теперь в первую таблицу вставляю новую строку. Чтобы апдейтить view для второй таблицы естественно использую
Код:
	relationModel(1)->select();
        relationModel(2)->select();
Ага, в соответствующих колонках при редактировании это новое имя в комбо-боксе появляется,.. но при попытки выбрать его в качестве нового значения ничего не происходит - при смене фокуса там восстанавливается предыдущее значение... После перезагрузки программы все ок - новое имя можно выбрать. Подскажите плиз кто-нито, в чем тут проблема... reset я пробовал, другой режим редактирования - пробовал, пробовал даже базу переоткрывать - ничего не помогает.
 
Страниц: [1]

Страница сгенерирована за 0.029 секунд. Запросов: 24.