MFC предоставляет два класса для создания панелей инструментов: CToolBar и CToolBarCtrl (который упаковывает общий API элементов управления Windows). CToolBar предоставляет все функциональные возможности общего элемента управления панели инструментов и обрабатывает множество необходимых общих параметров и структур элементов управления; однако результирующий исполняемый файл обычно будет больше, чем созданный с помощью CToolBarCtrl .
CToolBarCtrl обычно это приводит к меньшему размеру исполняемого файла, и вы можете использовать CToolBarCtrl его, если не планируете интегрировать панель инструментов в архитектуру MFC. Если вы планируете использовать CToolBarCtrl панель инструментов и интегрировать ее в архитектуру MFC, необходимо проявлять дополнительную осторожность, чтобы сообщить об управлении панелью инструментов в MFC. Такое общение не представляет трудностей; однако это дополнительная работа, которая является ненужным при использовании CToolBar .
Visual C++ предоставляет два способа воспользоваться преимуществами общего элемента управления панели инструментов.
Не работает TranslucentTB. Как сделать панель задач прозрачной снова.
- Создайте панель инструментов с помощью CToolBar , а затем вызовите CToolBar::GetToolBarCtrl , чтобы получить доступ к CToolBarCtrl функциям-членам.
- Создайте панель инструментов с помощью конструктора CToolBarCtrl.
Любой из этих методов предоставляет доступ к функциям-членам элемента управления панели инструментов. При вызове CToolBar::GetToolBarCtrl он возвращает ссылку на CToolBarCtrl объект , чтобы можно было использовать любой набор функций-членов. Сведения о создании и создании панели инструментов с помощью CToolBar см. в разделе CToolBar.
Источник: learn.microsoft.com
Меню и панели инструментов в PyQt5 [Урок №3]
7 марта 2015 г.
Archy
Просмотров: 42367
RSS
9
Изучение PyQt5
PyQt, QAction, QApplication, QIcon, QMainWindow, QTextEdit, QtGui, QtWidgets, showMessage, statusBar, примеры PyQt
В этой части руководства PyQt5, мы будем создавать меню и панели инструментов. Меню – это группа команд, располагающаяся ниже строки заголовка программы. Панель инструментов содержит кнопки с несколькими распространенными командами в приложении.
Урок №2 по SketchUp — Как настроить панели инструментов
Основное окно
Класс QMainWindow предоставляет главное окно приложения. Он позволяет создать классический каркас приложения со строкой состояния, панелями инструментов и меню.
Строка состояния
Строка состояния – это виджет, который используется для отображения сведений о состоянии.
#!/usr/bin/python3 # -*- coding: utf-8 -*- import sys from PyQt5.QtWidgets import QMainWindow, QApplication class Example(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): self.statusBar().showMessage(‘Ready’) self.setGeometry(300, 300, 250, 150) self.setWindowTitle(‘Statusbar’) self.show() if __name__ == ‘__main__’: app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
Строку состояния создают с помощью виджета QMainWindow.
self.statusBar().showMessage(‘Ready’)
Чтобы получить строку состояния, мы вызываем метод statusBar() класса QtGui.QMainWindow. Первый вызов метода создаёт строку состояния. Последующие вызовы возвращают объект строки состояния. showMessage() отображает сообщение в строке состояния.
Меню программы
Строка меню – это распространенная часть приложений с графическим интерфейсом (GUI).
#!/usr/bin/python3 # -*- coding: utf-8 -*- import sys from PyQt5.QtWidgets import QMainWindow, QAction, qApp, QApplication from PyQt5.QtGui import QIcon class Example(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): exitAction = QAction(QIcon(‘exit.png’), ‘File’) fileMenu.addAction(exitAction) self.setGeometry(300, 300, 300, 200) self.setWindowTitle(‘Menubar’) self.show() if __name__ == ‘__main__’: app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
В примере выше, мы создаём строку меню с одним набором команд. Этот набор команд будет содержать одно действие, завершающее приложение при его выборе. Строка состояния тоже создаётся. Действие доступно с горячей клавишей Ctrl+Q.
exitAction = QAction(QIcon(‘exit.png’), ‘File’) fileMenu.addAction(exitAction)
Метод menuBar() создаёт строку меню. Мы создаём меню «File» и добавляем в него действие выхода из приложения.
Панель инструментов
Все команды из меню, которые мы можем использовать в приложении. Панели инструментов предоставляют быстрый доступ к большинству часто используемых команд.
#!/usr/bin/python3 # -*- coding: utf-8 -*- import sys from PyQt5.QtWidgets import QMainWindow, QAction, qApp, QApplication from PyQt5.QtGui import QIcon class Example(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): exitAction = QAction(QIcon(‘exit24.png’), ‘Exit’, self) exitAction.setShortcut(‘Ctrl+Q’) exitAction.triggered.connect(qApp.quit) self.toolbar = self.addToolBar(‘Exit’) self.toolbar.addAction(exitAction) self.setGeometry(300, 300, 300, 200) self.setWindowTitle(‘Toolbar’) self.show() if __name__ == ‘__main__’: app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
В вышеприведённом примере, мы создаём простую панель инструментов. Она имеет один инструмент, действие выхода, которое завершает приложение, будучи инициированным.
exitAction = QAction(QIcon(‘exit24.png’), ‘Exit’, self) exitAction.setShortcut(‘Ctrl+Q’) exitAction.triggered.connect(qApp.quit)
В аналогичном примере как с созданием меню выше, мы создаём объект действия. Объект имеет метку, иконку и горячую клавишу. Метод quit() из QtGui.QMainWindow присоединяется к инициирующему сигналу.
self.toolbar = self.addToolBar(‘Exit’) self.toolbar.addAction(exitAction)
Здесь мы создаём панель инструментов и подключаем объект действия к ней.
Рисунок: Панель инструментов
Совместное размещение
В последнем примере этой части, мы создадим меню, панель инструментов и строку состояния. Мы также создадим центральный виджет.
#!/usr/bin/python3 # -*- coding: utf-8 -*- import sys from PyQt5.QtWidgets import QMainWindow, QTextEdit, QAction, QApplication from PyQt5.QtGui import QIcon class Example(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): textEdit = QTextEdit() self.setCentralWidget(textEdit) exitAction = QAction(QIcon(‘exit24.png’), ‘Exit’, self) exitAction.setShortcut(‘Ctrl+Q’) exitAction.setStatusTip(‘Exit application’) exitAction.triggered.connect(self.close) self.statusBar() menubar = self.menuBar() fileMenu = menubar.addMenu(‘http://python-3.ru/page/menu-toolbar-pyqt-python» target=»_blank»]python-3.ru[/mask_link]
Меню, подменю и панель инструментов в Tkinter
В этой части обучения Tkinter мы поработаем с меню и панелями инструментов. Меню – одна из наиболее заметных и используемых частей графического интерфейса приложений.
Фактически, это группа команд, которая объединена в одно меню. В консольных приложениях нам нужно запоминать большое количество тайных команд. Здесь же все команды объединены в удобные группы и расположены на видном месте.
Существуют определенные стандарты, которые позволяют пользователям быстрее осваивать как работает новое приложение. Меню объединяют группы команд, которые мы можем использовать для управления приложением. Панели инструментов дают нам быстрый доступ к тем командам, которые мы используем чаще всего.
Создание простого меню в Tkinter
Первый пример создает простое меню.
Источник: python-scripts.com