После MFC + WinAPI, Qt просто мозг ломает капитально! Как изучать?
Только Путин, и никого кроме Путина! О Великий и Могучий Путин — царь на веки веков, навсегда!
Смотрю только Соловьева и Михеева, для меня это самые авторитетные эксперты.
КРЫМ НАШ! СКОРО И ВСЯ УКРАИНА БУДЕТ НАШЕЙ!
Здравствуйте, Мёртвый Даун, Вы писали:
МД>После MFC + WinAPI, Qt просто мозг ломает капитально! Как изучать?
Qt assistant + Google Driven Development(что непонятно смотришь в гугле, ответы есть на все вопросы). К тому же Qt на мой взгляд один из самых легких в освоении фреймворков.
Здравствуйте, Мёртвый Даун, Вы писали:
МД>После MFC + WinAPI, Qt просто мозг ломает капитально! Как изучать?
Я тоже, к сожалению, так и не нашел нормальной литературы на русском. Большинство книг (и даже онлайн-документация) носят "рецептурный" характер, мол, вот если сделает так, то получите вот это. При этом за деревьями практически не видно леса, и приходится постоянно обращаться за помощью к "бывалым".
Но в качестве отправной я бы выделил "Макс Шлее Qt4 Профессиональное программирование на С++".
Здравствуйте, koenjihyakkei, Вы писали:
K>Здравствуйте, Мёртвый Даун, Вы писали:
МД>>После MFC + WinAPI, Qt просто мозг ломает капитально! Как изучать?
K>Qt assistant + Google Driven Development(что непонятно смотришь в гугле, ответы есть на все вопросы). К тому же Qt на мой взгляд один из самых легких в освоении фреймворков.
Да дело в том, что даже те же самые примеры они всё время какие то незаконченные. Или очень очень простые.
Казалось бы, ну простой бы тривиальный пример привести для Qt + QML: при нажатии кнопки открывается окно, или какое то более сложное действие. Но я везде вижу из разряда чтото типа:
onClick: root.index++
Всё!!! Как будто других действий на нажатие кнопки придумать нельзя! Обалдеть примеры!
Только Путин, и никого кроме Путина! О Великий и Могучий Путин — царь на веки веков, навсегда!
Смотрю только Соловьева и Михеева, для меня это самые авторитетные эксперты.
КРЫМ НАШ! СКОРО И ВСЯ УКРАИНА БУДЕТ НАШЕЙ!
Здравствуйте, Мёртвый Даун, Вы писали:
МД>После MFC + WinAPI, Qt просто мозг ломает капитально! Как изучать?
По примерам в интернете (то, что попроще), по статьям, по опен сорс проектам. Так, в общем-то большинство технологий осваиваются.
Главное — писать код. Придумайте себе задачу (табличку вывести со статистикой по компу, например), сделайте, выложите на код ревью.
QML я бы сразу не изучал, начал бы с основ QtCore + QtNetwork. Но если уж хочется — вот неплохой пример: http://www.ics.com/blog/multilayered-architecture-qt-quick
Здравствуйте, Мёртвый Даун, Вы писали:
МД>Да дело в том, что даже те же самые примеры они всё время какие то незаконченные. Или очень очень простые.
МД>Казалось бы, ну простой бы тривиальный пример привести для Qt + QML: при нажатии кнопки открывается окно, или какое то более сложное действие. Но я везде вижу из разряда чтото типа:
МД>onClick: root.index++
МД>Всё!!! Как будто других действий на нажатие кнопки придумать нельзя! Обалдеть примеры!
Ну, QML вообще какие то обкуренные люди придумали... Там мозг вообще отказывается воспринимать даже исходники. (Хотя, впрочем как и в самом Qt).
(Как же в MFC всё просто и логично!)
Только Путин, и никого кроме Путина! О Великий и Могучий Путин — царь на веки веков, навсегда!
Смотрю только Соловьева и Михеева, для меня это самые авторитетные эксперты.
КРЫМ НАШ! СКОРО И ВСЯ УКРАИНА БУДЕТ НАШЕЙ!
Ну как я и говорил выше: чтото можно хотя бы чуть более сложнее чем "onClick: console.log(item.text)"?????????????????????????? Другие действия бывают какие-то????????????????? Зачем такие примеры вообще пишут???????
Окэй, конкретно мой случай, QML:
1) есть окно с кнопкой (window1.qml)
2) есть второе окно (window2.qml)
как при нажатии кнопки в первом окне открыть второе окно??? Что еще может быть тривиальней?! Решаю эту задачу уже почти целый день! Ну как так? Что это за язык и библиотека чтобы для такого действия потратить день? С другими языками и библиотеками таких проблем почему та не было...
Только Путин, и никого кроме Путина! О Великий и Могучий Путин — царь на веки веков, навсегда!
Смотрю только Соловьева и Михеева, для меня это самые авторитетные эксперты.
КРЫМ НАШ! СКОРО И ВСЯ УКРАИНА БУДЕТ НАШЕЙ!
Здравствуйте, Мёртвый Даун, Вы писали:
МД>Ну как я и говорил выше: чтото можно хотя бы чуть более сложнее чем "onClick: console.log(item.text)"?????????????????????????? Другие действия бывают какие-то????????????????? Зачем такие примеры вообще пишут???????
МД>Окэй, конкретно мой случай, QML:
МД>1) есть окно с кнопкой (window1.qml) МД>2) есть второе окно (window2.qml)
МД>как при нажатии кнопки в первом окне открыть второе окно??? Что еще может быть тривиальней?! Решаю эту задачу уже почти целый день! Ну как так? Что это за язык и библиотека чтобы для такого действия потратить день? С другими языками и библиотеками таких проблем почему та не было...
А это разве не оно?
Button {
text: "Test dialog"
onClicked: {
var component = Qt.createComponent("Popup.qml");
if (component.status === Component.Ready) {
var dialog = component.createObject(parent,{popupType: 1});
dialogConnection.target = dialog
dialog.show();
}
}
__>Но в качестве отправной я бы выделил "Макс Шлее Qt4 Профессиональное программирование на С++".
Уже версия 5.3 описана в очередном издании.
Но все равно отстает...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
__>>Но в качестве отправной я бы выделил "Макс Шлее Qt4 Профессиональное программирование на С++". LVV>Уже версия 5.3 описана в очередном издании. LVV>Но все равно отстает...
судя по отзывам, принципиальных отличий изданий нет
LVV>>Уже версия 5.3 описана в очередном издании. LVV>>Но все равно отстает... __>судя по отзывам, принципиальных отличий изданий нет
QtCreator описан довольно подробно — чего в 4 версии не было.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, _hum_, Вы писали:
__>Здравствуйте, Мёртвый Даун, Вы писали:
МД>>После MFC + WinAPI, Qt просто мозг ломает капитально! Как изучать? __>Я тоже, к сожалению, так и не нашел нормальной литературы на русском.
Так ни на каком нету языке! В том то и дело!
Только Путин, и никого кроме Путина! О Великий и Могучий Путин — царь на веки веков, навсегда!
Смотрю только Соловьева и Михеева, для меня это самые авторитетные эксперты.
КРЫМ НАШ! СКОРО И ВСЯ УКРАИНА БУДЕТ НАШЕЙ!
Здравствуйте, LaptevVV, Вы писали:
LVV>>>Уже версия 5.3 описана в очередном издании. LVV>>>Но все равно отстает... __>>судя по отзывам, принципиальных отличий изданий нет LVV>ЙеСкуфещк описан довольно подробно — чего в 4 версии не было.
Здравствуйте, Мёртвый Даун, Вы писали:
МД>Здравствуйте, _hum_, Вы писали:
__>>Здравствуйте, Мёртвый Даун, Вы писали:
МД>>>После MFC + WinAPI, Qt просто мозг ломает капитально! Как изучать? __>>Я тоже, к сожалению, так и не нашел нормальной литературы на русском.
МД>Так ни на каком нету языке! В том то и дело!
Ну, я пока в англоязычном контенте глубоко не копался, потому говорить ничего не буду. Но наверное, да, и там будут разрозненные фрагменты, которые придется собирать по кусочкам в цельное представление.
Здравствуйте, Мёртвый Даун, Вы писали:
МД>Ну, QML вообще какие то обкуренные люди придумали... Там мозг вообще отказывается воспринимать даже исходники. (Хотя, впрочем как и в самом Qt).
QML — это надстройка над JS. Заточенная по Qt. Что вы там видите укуренного я не понимаю (хотя и не курю). JS по вашему — сложный язык? Не нравится — не учите, вас же никто не заставляет их использовать .
Видимо, skype/google earth/itunes (win)/Kaspersky/Maya/VCL/VirtualBox и много других интересных проектов используют Qt потому, что они не оценили всю мощь, стабильность и красоту давно мёртвого mfc?
А какая у Qt документация — вообще сказка.
МД>(Как же в MFC всё просто и логично!)
Вы ещё скажите, что в turbo vision всё просто и логично. Я понимаю, что сложно учить что-то новое. Но в случае с Qt — это оправдано. Qt намного удобнее и проще в использовании, и написана значительно лучше, чем MFC.
Reimplemented from QAbstractItemDelegate::createEditor().
Returns the widget used to edit the item specified by index for editing. The parent widget and style option are used to control how the editor widget appears.
То есть, вместо того, чтобы мне сказать, что из себя представляют аргументы функции (например, какой именно виджет будет считаться родительским), мне общими фразами говорят, для чего они используются. Это почти то же самое, как в описании к функции log(x,y) прочесть "x,y используются для вычисления значения логарифма".
__>То есть, вместо того, чтобы мне сказать, что из себя представляют аргументы функции (например, какой именно виджет будет считаться родительским), мне общими фразами говорят, для чего они используются. Это почти то же самое, как в описании к функции log(x,y) прочесть "x,y используются для вычисления значения логарифма".
Попробуйте, для разнообразия, почитать документацию. Я понимаю, что это тяжело, не современно, что надо как в mfc- познавать всё методом научного тыка... В доке же можно прямо по типам параметров кликать, чтобы перейти на нужные страницы.
Что такое "делегат" в рамках QtMVC: http://doc.qt.io/qt-5/model-view-programming.html QWidget, QStyleOptionViewItem, QModelIndex.
А ещё можно программировать "через точечку/стрелочку" и почитать, что же за такие структуры вам передают.
Здравствуйте, SaZ, Вы писали:
SaZ>Здравствуйте, _hum_, Вы писали:
__>>То есть, вместо того, чтобы мне сказать, что из себя представляют аргументы функции (например, какой именно виджет будет считаться родительским), мне общими фразами говорят, для чего они используются. Это почти то же самое, как в описании к функции log(x,y) прочесть "x,y используются для вычисления значения логарифма".
SaZ>Попробуйте, для разнообразия, почитать документацию. Я понимаю, что это тяжело, не современно, что надо как в mfc- познавать всё методом научного тыка... В доке же можно прямо по типам параметров кликать, чтобы перейти на нужные страницы. SaZ>Что такое "делегат" в рамках QtMVC: http://doc.qt.io/qt-5/model-view-programming.html SaZ>QWidget, QStyleOptionViewItem, QModelIndex.
SaZ>А ещё можно программировать "через точечку/стрелочку" и почитать, что же за такие структуры вам передают.
SaZ, вот вы опять выдумываете то, чего не было. Я не говорил, что Qt плох, я говорил, что документация к нему намного хуже MSDN-кой (той, что к MFC).
Еще раз, вот нужно мне узнать, что из себя в функции QItemDelegate::createEditor представляет параметр parent (например, меня интерeсует, является ли он указателем на QTableView или какие-то его подклассы и проч.). В нормальной доке либо напрямую написали бы, либо дали ссылки на эту инфу. В Qt-шной ничего подобного нет (приводить в данном случае ссылку на описание класса QWidget — это то же самое, что в документации к функции log(float x, float y) приводить ссылку на описание типа float)?
Здравствуйте, SaZ, Вы писали:
SaZ>Здравствуйте, Мёртвый Даун, Вы писали:
МД>>Ну, QML вообще какие то обкуренные люди придумали... Там мозг вообще отказывается воспринимать даже исходники. (Хотя, впрочем как и в самом Qt).
SaZ>QML — это надстройка над JS. Заточенная по Qt. Что вы там видите укуренного я не понимаю (хотя и не курю). JS по вашему — сложный язык? Не нравится — не учите, вас же никто не заставляет их использовать .
JS — тоже со своими фишками, но по крайней мере логичный! В Qt — по моему всё алогично и непривычно!
По сравнию с MFC тут куча нелогичностей!
1) В первых строках я читаю так: "Я нажал сам на себя и сам это обработал". Возможно фактически та это не так, но читается именно так! Это не по MFC-ишному. Непонятно где обработчик и где его надо писать. Вообще ничо непонятно, блин!
2) Я как раз и хочу залоадить ЭТОТ элемент "window.qml" и показать, а лоадер оказывается в нем самом. Как так? Непонимаю!
Т.е., что логичней?
Так:
MyLoader->load(Item) // в нормальных библиотеках делают всегда так
или так:
хмм... даже немогу записать... мозг на раскаряку от такой (НЕ)логики... "Я хочу загрузить то, что я загружаю... или загружается..."... Жесть!
SaZ>Видимо, skype/google earth/itunes (win)/Kaspersky/Maya/VCL/VirtualBox и много других интересных проектов используют Qt потому, что они не оценили всю мощь, стабильность и красоту давно мёртвого mfc?
SaZ>А какая у Qt документация — вообще сказка.
У Вас наверное какая то своя Qt, спец версия?! У Qt документации нет вообще, от слова совсем. Про примеры там даже и незнают.
МД>>(Как же в MFC всё просто и логично!)
SaZ>Вы ещё скажите, что в turbo vision всё просто и логично. Я понимаю, что сложно учить что-то новое. Но в случае с Qt — это оправдано. Qt намного удобнее и проще в использовании, и написана значительно лучше, чем MFC.
Хмм... я ж не голословно написал. Сравниваю реалии. Тривиальные вещи отнимают массу времени. MFC почему то столько не отнимал.
Только Путин, и никого кроме Путина! О Великий и Могучий Путин — царь на веки веков, навсегда!
Смотрю только Соловьева и Михеева, для меня это самые авторитетные эксперты.
КРЫМ НАШ! СКОРО И ВСЯ УКРАИНА БУДЕТ НАШЕЙ!