Просмотр сообщений
|
Страниц: 1 2 [3] 4 5 ... 57
|
31
|
Qt / Общие вопросы / Re: QSortFilterProxyModel и insertRow
|
: Сентябрь 06, 2016, 21:43
|
Реализовать в своей модели InsertRows причем через этот собственный AddRow и все заработает ))) Если все правильно делать AddRow должен быть приватным, а все внешние вызовы вставки строки как раз и должны быть через InsertRows ( и InsertRow, который через него реализован ).
|
|
|
32
|
Qt / Общие вопросы / Re: QSortFilterProxyModel и insertRow
|
: Сентябрь 06, 2016, 21:24
|
У меня класс унаследованный от QSqlQueryModel. А инсерт у меня в нем реализован свой и делается через sql зарос к базе. Хорошо в этой вашей своей модели InsertRows виртуальный переопределен или свой какой нибудь метод типа "AddRow" для вставки новых записей? Очевидно второе и тогда понятно почему у вас InsertRows возвращает false. QSqlQueryModel - только для чтения, в ней не реализован InsertRows, она унаследована от QSqlTableModel в которой так же нет реализации InsertRows, а она наверное есть в еще более дальнем предке и возвращает false, ничего больше не делая. Из справки: bool QAbstractItemModel::insertRows(int row, int count, const QModelIndex &parent = QModelIndex())
Note: The base class implementation of this function does nothing and returns false.
|
|
|
33
|
Qt / Базы данных / Re: бд связь один ко многим
|
: Сентябрь 06, 2016, 21:11
|
Мне видится только один правильный путь.
Связи задаются в БД - то есть там есть две таблице с сущностями для которых надо задать связи. Для этих таблиц обязательно наличие суррогатных первичных ключей (а я приверженец такого подхода, что суррогатный первичный ключ нужен всем и каждой таблице в любой БД). И есть третья таблица в которой и задается связь многие ко многим, через ИД-шники первых двух таблиц. То есть имеет вид
ROW_ID | TABLE_1_ROW_ID | TABLE_2_ROW_ID
ROW_ID - собственный суррогатный ключ таблицы связей TABLE_1_ROW_ID И TABLE_2_ROW_ID - ключи связываемых таблиц
По полям TABLE_1_ROW_ID И TABLE_2_ROW_ID должен быть создан уникальный индекс
Далее для вывода на клиент - как больше нравится или запрос с джойнами или хранимая процедура, если сервер БД их поддерживает. То есть этот запрос или ХП выводит уже не ИД-шники, а данные с ними связанные в своих таблицах.
Вызов ХП или запрос кладется в QSqlQueryModel - ну и все в таблице будет видно.
НО функционал QSqlQueryModel крайне ограничен и уже добавлять и редактировать/удалять записи через нее быдет сложно, т.к. нельзя задать отдельных запросов InsertSQL, RemoveSQL и т.д. Мне пришлось для таких целей писать свою модель.
|
|
|
34
|
Qt / Общие вопросы / Re: QSortFilterProxyModel и insertRow
|
: Сентябрь 06, 2016, 20:42
|
bool QSortFilterProxyModel::insertRows(int row, int count, const QModelIndex &parent) { Q_D(QSortFilterProxyModel); if (row < 0 || count <= 0) return false; QModelIndex source_parent = mapToSource(parent); if (parent.isValid() && !source_parent.isValid()) return false; QSortFilterProxyModelPrivate::Mapping *m = d->create_mapping(source_parent).value(); if (row > m->source_rows.count()) return false; int source_row = (row >= m->source_rows.count() ? m->source_rows.count() : m->source_rows.at(row)); return d->model->insertRows(source_row, count, source_parent); } Обратите внимание на последнюю строчку - как я и говорил, прокси просто через свою приватную часть вызывает метод InsertRows исходной модели. У Вас что за модель используется в качестве исходной для прокси? В ней то реализовано InsertRows ?
|
|
|
35
|
Qt / Общие вопросы / Re: QSortFilterProxyModel и insertRow
|
: Сентябрь 06, 2016, 16:02
|
Почему почему в QSortFilterProxyModel нельзя использовать insertRow()
А почему нельзя? Вроде и можно и работает, специально проверил у себя. Потому что QSortFilterProxyModel не хранит данные, а работает с данными находящимися в установленной QAbstractItemModel *QAbstractProxyModel::sourceModel() const Ну и что, вот в своей реализации InsertRows она и вызовет InsertRows исходной модели - в этом и суть прокси модели работать как исходная с возможностью сортировки и фильтрации. Наследуйтесь от QAbstractItemModel, помещайте внутрь другую модель и реализуйте виртуальные методы с учетом вложенной модели. Должна получиться реализация похожая на QSortFilterProxyModel, только с вашей логикой добавления/редактирования/удаления элементов. QSortFilterProxyModel итак наследник QAbstractItemModel и именно для таких целей и был придумал, мне кажется надо его использовать, а не изобретать велосипед.
|
|
|
36
|
Разное / Говорилка / Re: В чем убогость винды?
|
: Июль 19, 2016, 00:07
|
Ну да. 5% и 7% это же супер показатели качества авто. Откуда это опять прилипилось про качество? Кто об этом и где говорил? Здесь речь о другом как Вы постоянно то ли путаете, то ли намеренно мешаете цифры. Уж 2% или 7 - есть разница. Не надо людей считать дураками. И если бы вы внимательно почитали эту статью, то поняли бы, что дураков то все меньше и меньше. За год продажа гранты на 48% упала. Так же как упала продажа всего и вся в связи с ростом курса доллара и другими внешними причинами. Мне на гранту плевать, это просто показатель объективности ваших рассуждений. Так куда уж нам-то с нашими мозгами. Нам только и остается фантазировать. У вас же как не высер, так диссертация. По крайней мере я не пишу очевидную чушь. Про завод который закрылся, хотя он на самом деле работает и продает и про ОС, которая якобы самая лучшая лишь потому, что наиболее распространена на сегодняшний день.
|
|
|
38
|
Разное / Говорилка / Re: В чем убогость винды?
|
: Июль 18, 2016, 23:14
|
Особенно сравнение линуха с "ягуарами" посмешило. Где это было? И когда вы под стол пешком ходили, я долг союзу отдавал, недалеко от его границ. Поэтому не надо мне тыкать. Мне без разницы кому ты(Вы) отдавал долг, просто говори по теме внятные вещи, а не неси кашу своего сознания. Кроме того кто когда где служил, когда кто-то другой ходил под стол как относится к теме? Рассуждаете вы как обычный фанатик, которому мозги засрали (или он сам себе из засрал). Но это обычное дело. В своем глазу как говорится. Мой главный тезис Виндовс ничем не лучше,а зачустую даже хуже других аналогичных ОС. Сравнивать могу с Линукс, т.к. и с Виндой и с Линуксом связан длительный и реальный опыт работы. Потому я ничего не говорю про МАК, т.к. понятия о нем не имею. И второй тезис - критерий распространенности и массовости вещи не является показателем ее качества. (ягуар именно к этому был упомянут) Если по вашему это доводы фанатика, лучше идите служить дальше, возможно от вас там больше толку. В хорошем смысле, в армейской службе не нужно думать и принимать решения, их принимает узкий круг, остальные только выполняют, и для армии это правильно конечно!
|
|
|
39
|
Разное / Говорилка / Re: В чем убогость винды?
|
: Июль 18, 2016, 21:46
|
Могу предположить, что ты из этих неонацистов которые своих же стреляют, а агрессору боятся войну объявить? )))) Мост будет, собака лает, караван идет!
|
|
|
40
|
Разное / Говорилка / Re: В чем убогость винды?
|
: Июль 18, 2016, 21:28
|
вся средняя полоса живет только за счет ВАЗа. Да ну? У нас в Центральном черноземье (Воронеж) нет производств Автоваза. - Это первое. умрет ВАЗ - умрут многие города поволжья. Какое на.. поволжье - знаешь, хоть где это? Сколько ездил в Волгоград и Саратов, не видел там производств Автоваза. и вместе с ними - российская тяжелая метапллургия. Вот это точно бред сивой кобылы ))))))) А профильную трубу и арматуру не надо будет производить? А двутавр и профлист? А теперь прикинь крошечный объем металла на авто с тоннами потребления стройкой и РЖД например? Рельсы, Вагоны, Металлоконструкции для мостов, цехов, сваи? В Крыму на строительство моста на пару пролетов уйдет столько же металла, сколько потреблял автоваз в год. Вы во всем так рассуждаете, не владея темой.... ))) И в ОС в том числе ))) И если уж свою сра... пишешь четверостишиями - рифмуй ее, или у тебя разрешение экрана 600x480??? ))) а теперь завали хлебальник. ой как страшно))) Зачем ты пугаешь моего оппонента? Кстати так уверен в себе и своей правоте? Про металлургию и автоваз ты просто полнейший бред написал, думаю с этим согласятся многие, даже те кто линукс не любит)))
|
|
|
41
|
Разное / Говорилка / Re: В чем убогость винды?
|
: Июль 18, 2016, 21:14
|
PimenS Неубедил. Мысли туда-сюда скачут, выводов никаких. В голове у Вас все перемешано. Вы не понимаете почему "ягуаров, ламборджини и т.д. меньше, чем других машин? Понимаю, я же это не спрашивал!!!!! А вы понимаете к чему я написал об этом? Ни к тому ли, что распространенная вещь не всегда лучшая? На каком языке написать, чтобы было понятно, что это теплое и мягкое? Каких денег стоит линукс? Разных денег стоит! Если бы ты хоть немного знал об этом, то знал, что есть целые конторы, которые живут продажей и поддержкой своих дистрибутивов Линукс и на этом неплохо зарабатывают. И если вы уж с жигулями сравниваете, то напомню вам, что жигулей больше нет. Не хотят люди платить за дерьмо, хоть оно и дешевое. А что завод Автоваза закрыли или взорвали? Или стало меньше дураков готовых покупать калину и гранту за 400 тыс. руб. вместо б.у. иномарки? Зафантазировался совсем? Или не хватило ума понять, что под словом жигули и Лада, и вообще все автомобили концерна Автоваз подразумеваются? А у меня не больше, с чего вдруг - анимация там красивая? )))) "Винда продвигается", "для ПРОДАЖИ", так а как должно быть то? Т.е. вы предлагаете раздавать? Вот уж глупость. Очередной коммунистический бред. Бред в голове у тебя. Я не предлагаю ничего раздавать. И к комунизму никакого отношения не имею, хотя даже сомневаюсь, что ты знаешь о чем это.... Что касается винды повторюсь еще раз - она наиболее распространена не потому, что лучше, а потому, что Билл Гейтс первым увидел будущее такой ОС в домашних десктопах, когда другие думали, что все это игрушки. И стал свое полухрамое детище, частично содранное с других ОС активно продвигать. И в этом нет ничего криминального, просто пора уже признать, что ОС захватившая рынок, потому как оказалась в нужный момент своим хозяинов во всюду продвинута ничем принципиально не лучше аналогов, и это совершенно не аргумент. "Нас больше и мы дебилы....." Вот уж глупость. Очередной коммунистический бред. GNU называется )))))) Дураки придумали красноглазые, лишь бы под виндой не сидеть. А потом и QT подхватили и все остальные и придумали еще и LGPL - позволяющую еще и продать свое созданное на основе того, что в качестве бреда раздали...
|
|
|
42
|
Разное / Говорилка / Re: В чем убогость винды?
|
: Июль 18, 2016, 17:12
|
Почему на сегодняшний день, на персональных компьютерах доля Линукс, составляет всего 1,5%? Я не понимаю почему это вообще важно? Мы говорим о том, что лучше или о том, чего больше? Говна всегда больше это факт. Почему ягуаров, ламборджини и т.д. меньше, чем других машин? И что это доказывает? Точно не то, что они хуже жигулей. Вы уже от того, что не знаете как оправдать свою точку зрения аппелируете к массовости, которая отнюдь не является показателем высоких качеств продукта. Это как теплое с мягким. Я не знаю где вы брали 1,5% - по этой статистике http://www.w3schools.com/browsers/browsers_os.asp - 5,6% что весьма неплохо для системы, которую начал писать один человек в качестве хобби. Винда продвигается во всюду куда только можно для одной цели - захват рынка. Возьмем например DirectX - зачем нужно в мире две системы графического вывода ? Почему бы майкрософт не кинуть силы на улучшение OpenGL, а не вставлять палки в колеса, блокируя принятия новых стандартов последнего? Ответ же очевиден - чтобы свое продавать - то же самое со всеми их продуктами. Это и SQL Server, и Visual Studio и многое, многое другое, что работает на пресловутом Виндовс. И все это друг друга продвигает для ПРОДАЖИ. А потмоу и широкое распространение! Бизнес это!
|
|
|
45
|
Разное / Говорилка / Re: В чем убогость винды?
|
: Июль 18, 2016, 16:05
|
Уважаемый, научитесь читать, что пишут люди. Не порите чушь. Bepec говорил о убунте, которая ни на железе, ни на виртуалке не ставится. А вы поставили на виртуалку ХР и показываете этим прямоту своих рук? Так и так всем понятно, что винда в 95% случаев на любое железо встает без глюков. ъ Говорить то он говорил, но вот фото не смог привести на реальном железе, говорить - это не факты, это пиз.... Что и почему у него там не заработало не понятно. А я говорю, что сталкивался и не раз, когда конкретно ХП не хотела ставится и с ней были немалые проблемы, которые в отличие от линукса можно было решить только заменой железа. А так же я говорю, что Линукс у меня ставится и работает, и значек раскладки клавиатуры не вызывает поводов лезть в хелп или гугл )))))
|
|
|
|
|