crossplatform.ru

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

История благодарностей участнику Алексей1153 ::: Спасибо сказали: 190 раз(а)
Дата поста: В теме: За сообщение: Спасибо сказали:
21.7.2017, 7:33 QDataWidgetMapper и несколько QCombobox
iCast, можно предположить, что model->fieldIndex("car_name") и model->fieldIndex("task_name") возвращают одинаковые значения. Проверь
iCast,
12.4.2017, 18:16 #pragma pack и __attribute__
попробуй так

#ifdef Q_OS_WIN32
#define __attribute__(a)  //ничего не делаем
#endif

#ifdef Q_OS_WIN32
#pragma pack(push, 1)
#endif
typedef struct __attribute__ ((packed))
{
...
}MyStruct;
#ifdef Q_OS_WIN32
#pragma pack(pop)
#endif


в линуксе это тоже какой-то дефайн, видимо



а вообще в C++ вот так уже не модно делать:
typedef struct
{
...
}MyStruct;


вот так моднее )
struct MyStruct
{
...
};


Анна, и вопрос - зачем тебе выравнивание на 1 байт ? Это нужно обычно в случае работы с железякой или старыми структурами, то есть там, где байты должны быть чётко на своих местах без фантазий компилятора
Анна,
20.1.2016, 8:03 QString объект из функции.
Ponchikus, ты выводишь адрес локальной переменной, которая уже будет уничтожена по выходу из функции. Поэтому адрес вполне уже может использоваться под новые нужды. Значение, которая вернула функция, используется в конструкторе при создании нового объекта (QString str), для которого и был использован уже освободившийся адрес


кстати, вот так

QString str;
str=returnStr();
qDebug()<<&str;



адрес может быть выведен другой (по логике - он обязательно другой будет)
Ponchikus,
23.12.2015, 7:58 Перевести код под gtk+3.6.4
а что именно не работает ?

навскидку - не видно, где создаётся память для widget. А на инициализацию переменных вообще тут поклали
lss,
16.12.2015, 13:46 QFileSystemModel и полное сканирование папок
dmsovetov, не знаю, как насчёт одинаковых имён, я к своим слотам и сигналам приписываю префиксы slot_ и signal_ всегда, чтобы не нарываться на одинаковые имена ) Так, на всякий случай. Здесь вроде всё правильно компилятор понимает

ещё момент. Я добавил проверку
    if(!idx.isValid())
    {
        //после переименования файла вне программы попадаем сюда, однако
    }


и вот такой невалидный индекс ты передаёшь в rowCount, после чего ассерт показывается

Причину невалидности не знаю

ViGOur, рекурсии нету, поскольку указаны SLOT и SIGNAL , поэтому препроцессор вроде понимает их как разные сигнатуры
dmsovetov,
16.12.2015, 12:28 Получение порядкового номера QTreeView
poluna, у меня обычно есть "внемодельное" дерево - источник, по которому модель пересобирается. Контейнер обычно на основе QMap<>

struct s_item
{
s_item* m_parent;
QVector<s_item*> m_children;

...

};


s_item* m_root;
QMap<s_item*,s_item*> m_tree;


У тебя этой очень удобной детальки , похоже, нету, поэтому мы не и понимаем друг друга :D В контейнере всё ищется и перебирается запросто
poluna,
15.12.2015, 8:01 Переподключение к БД
SibBear, про сбой не знаю (сбой - это серьёзно :lol: ), а при разрыве связи можно посмотреть

https://dev.mysql.com/doc/refman/5.7/en/auto-reconnect.html

метод QSqlDatabase::setConnectOptions , параметр MYSQL_OPT_RECONNECT

ну и проверяем, что база открыта isOpen

Переподключаться можно точно так же, как подключался

db.close();
db.open();


процесс подключения может быть заметный по времени (скажем так, не мгновенный), так что учитывай это. Я у себя выделил отдельный поток, который заведует открытием базы, а также скидыванием из очереди потока новых сообщений. Ну, и в случае многопоточности также не забывай про синхронизацию
SibBear,
1.6.2014, 18:09 Узнать о подключении телефона к ПК
я сомневаюсь, что это возможно в общем случае

но можно попробовать найти эмулированный телефоном COMпорт и AT командами выведать инфу о устройстве. Если COM не создаётся, то перебирать при помощи WinAPI все устройства и по вендорам, видимо, пытаться выяснить, кто из них кто

детали не смогу подсказать )

Ещё решение может зависить от поставленной цели
abc,
15.5.2014, 9:16 Задание цвета текста и фона недоступного QListWidgetItem с помощью QPalette или CSS
Оля, в QtCreator , в редакторе формы в свойствах найди palette, откроется редактор. Там выбери детальное отображение цветов. А внизу окна - режим, который хочешь настраивать. И экспериментируй , так сказать, визуально )) Я лично там путаюсь немного, да и редко пользуюсь этим

потом можно открыть *.ui редактируемого диалога и найти, как там что расставилось.
Steklova Olga,
12.5.2014, 9:53 Строка StringList по позиции в тексте
ну как бы есть )

std::map<int/*номер в QStringList*/,uint32_t/*индекс в файле*/>
+
обратный мар (только уже multimap)
Alex_under,
10.4.2014, 11:03 в чем сделать исталятор драйвера?
mezmay, попробуй. Я этой утилитой для windriver файлы ставил, может быть проканает и тут
[attachment=1837:wdreg.zip]

я использовал gui-версию, потому что в случае ошибок она выкидывает диалог с обильным логом , есть и просто консольный вариант утилиты

хм, форум чего-то ругается при скачивании. Файлы безопасные так то о_О

[attachment=1838:__________.png]
mezmay,
14.10.2013, 12:13 Изменение высоты виджетов "на ходу"
можно применить QSplitter

на форму кладёшь оба контрола, выделяешь их с CTRL - сверху появятся кнопки объединения их с участием сплиттера
[attachment=1799:__________.png]
Анна,
26.7.2013, 7:43 Ошибка в отлове события KeyPress для таблицы
pharret31,

Цитата
Qt::Key_Return 0x01000004
Qt::Key_Enter 0x01000005 //Typically located on the keypad.

:)
pharret31,
13.5.2013, 7:03 Отображение базы данных
видимо, этой мыслью является
QAbstractTableModel
или
QSqlTableModel

(вторым я не пользовался, но судя по названию он лучше подойдёт)
Ирина,
22.4.2013, 9:15 Скопировать AVI файл на съемный носитель
convert - преобразование без потери содержимого, format - с полной зачисткой (и быстрее)
AD,
19.4.2013, 10:33 Не вызывается moveEvent для дочерних объектов
dartan,
Цитата(dartan @ 18.4.2013, 16:00) *
Так дети и так двигаются, за родителем. В них нужно только ловить событие перемещения.

всё верно, если ты положил на сцену QWidget, то его дети ведут себя точно так же, как на "обычном" виджете. Если хочешь известить детей о событии передвижения родителя, то в moveEvent родителя нужно перебрать всех детей и известить их

для редактора блок-схем QWidget не потребуется - я, например, прекрасно справился с подобным редактором при помощи QGraphicsItem и QGraphicsLineItem -элементов

есть ещё QGraphicsItemGroup класс для группировки элементов внутри себя - вот он тебе и нужен, наверное (мне он как-то не понадобился)

Использование QWidget-чайлдов на сцене оправдано только тогда, когда по некоторым причинам туда нужно затолкнуть элемент, работающий один в один как реальный виджет (например, часы, готовый ползунок, поле ввода или просто совместимость)
dartan,
27.3.2013, 13:21 Архитектурный вопрос
Цитата(lanz @ 27.3.2013, 11:39) *
стати насчет массивов данных, что тут лучше, base64? Нормально будет для объемов до 500Кб?
А то что то меня душит, непойму что


жабу не слушай, делай строку хексов 00112233AAFF , а то на конвертации потратишь больше ресурсов )
500 кб - фигня для нечастых обменов

если же всё столь специфично, что нужно часто передавать массивы, то делай для этого отдельный быстрый метод без текста.
lanz,
21.3.2013, 7:49 Присвоить значение
Цитата(nikita @ 21.3.2013, 10:42) *
Получать значение переменной через QMap медленнее чем на прямую по имени переменной, а обращений к этой(им) переменной у меня будет очень много. Поэтому мне кажется, что лучше пожертвовать временем на разбор считанных из файла данных(преременных должно быть 20-25 штук), чем каждый раз тратить лишнее время на обращение к QMap[].


http://www.youtube.com/watch?v=lj96YnI9El8

у меня тысячи переменных так работают в реальном времени, и ничего. Кроме того, иного способа, чем ассоциация, тут не придумаешь

а про сравнение времени считывания из файла и обращения к мапе - это совсем забавно ) Это как почта России и электронная почта
nikita,
21.3.2013, 7:17 Парсер для С/С++
если имеется студия (от 9 версии и выше), можно там создать проект, закинуть исходники в него и показать диаграммы классов во всей красе )
vankleef,
4.3.2013, 10:43 QListWidget
ну если ты его создавал при помощи new , то и удали при помощи delete

demaker,
26.2.2013, 21:37 QSqlQuery и транзакция
Цитата(Majestio @ 27.2.2013, 0:28) *
Вопрос, почему это нельзя (или у меня просто не получается), это сделать одним запросом?

видимо, это нарушение синтаксиса одной строки запроса


а вот в случае хранимых процедур это не нарушение, там так можно
Majestio,
26.2.2013, 18:00 mdiArea как работать с виджетами
mdiArea->addSubWindow(&widget);

а ему указатель надо, а не ссылку

только у тебя после выхода из функции всё упадёт ) Догадаешься, почему ?
electronik,
5.2.2013, 13:48 код ошибки -1073741819
нужно:

1) решить, какой класс управляет данными в массиве (в частности - в мапе, в списке)
2) инкапсулировать массив в этот класс с доступом private
3) сделать методы Clear(), DeleteItem(), .... , AddItem(), FindItem(), ...
4) из конструктора класса вызвать Clear()

и не мучать себя и остальных :D

и, естественно, никаких deleteLater
demaker,
4.2.2013, 14:12 nan
кстати, я не проверял, как оптимизатор обойдётся с кодом вида

double a=...;
bool isNan=!(a==a);


может, он решит, что isNan всегда == false
Litkevich Yuriy,
4.2.2013, 13:58 nan
http://ru.wikipedia.org/wiki/Nan

Цитата
NaN не равен ни одному другому значению (даже самому себе[2]); соответственно, самый простой метод проверки результата на NaN — это сравнение полученной величины с самой собой.

:)
nikita,

8 страниц V   1 2 3 > » 
RSS Текстовая версия Сейчас: 24.7.2017, 19:44