Comments 13
Я не совсем понял, зачем тут таймеры и все эти обработчики?
Всё же из коробки работает, без написания кода. Просто правильно лэйауты расставить.
А оно действительно нужно? :)
Первое и главное — надо понять, у нас SDI или MDI. Но как по мне — MDI это уже прошлый век.
А дальше уже плясать от этого. Мне очень сложно представить необходимость таких тулбаров.
Но в любом случае — статья про компоновку кнопочек в редакторе это не уровень хабра.
Я — начинающий разработчик и опыта у меня не много. Когда я искал в интернете информацию по реализации данного интерфейса, найти мне удалось довольно таки мало. Теперь же по подобным запросам есть страничка на хабре, где другие разработчики могут ознакомиться с написанным мною кодом и поделиться своим опытом, что, как мне кажется, очень даже хорошо. За критику же благодарю, критика всегда полезна :)
Для начала надо оформить весь код в виде отдельного виджета, а не химичить с QMainWindow.
А потом можно сделать репозиторий на github с хорошим readme. Поисковики вас проиндексируют. Либо написать вопрос/ответ на stackoverflow.
Всё таки Хабр — ресурс профессиональный. Если все начнут писать сюда тотуриалы для джунов вида «как перетащить виджет на форму», то ресурс умрёт из-за низкокачественного контента.
Наследование от QMainWindow не всегда нужно. QToolbar прекрасно добавляется в любой компоновщик.
Т.е. примерно такой лэйаут:
userPanel := QVBox { QDockArea, QWidget }
QMainWindow {
QSplitter {
userPanel,
userPanel
}
}
И остается еще место под главный тулбар QMainWindow.
Впрочем, делать свои кастомные виджеты имеет смысл, чтобы сделать, например, как вертикальный тулбар посередине Тотал Командера.
Реализация двойной панели инструментов в QT