欢迎光临散文网 会员登陆 & 注册

菜单栏、工具栏与状态栏

2022-04-02 14:04 作者:海鸥之道  | 我要投稿

1、菜单栏

在 QMain Window对象的标题栏下方,水平的QMenuBar被保留显示QMenu对象。QMenu类提供了一个可以添加到菜单栏的小控件,也用于创建上下文菜单和弹出菜单。每个 QMenu对象都可以包含一个或多个QAction对象或级联的QMenu对象。

要创建一个弹出菜单,PyQt API提供了createPopupMenu()函数;menuBar()函数用于返回主窗口的 QMenuBar对象;addMenu()函数可以将菜单添加到菜单栏中;通过addAction()函数可以在菜单中进行添加操作。

在设计菜单系统时使用的一些重要方法如表所示。

单击任何QAction按钮时,QMenu对象都会发射triggered信号。

实例演示1: QMenubar使用

运行脚本,显示效果如图所示。

代码分析:

在这个例子中,顶层窗口必须是QMainWindow对象,才可以引用QMenuBar对象。

通过addMenu()方法“File”菜单添加到菜单栏中。

菜单栏中的操作按钮可以是字符串或QAction对象。

将子菜单添加到顶级菜单中。

菜单发射triggered信号,将该信号连接到槽函数proecesstrigger(),该函数接收信号的QAction

对象。

2、QToolBar

QToolBar控件是由文本按钮、图标或其他小控件按钮组成的可移动面板,通常位于菜单栏下方。QToolBar类中常用方法如下表。

每当单击工具栏中的按钮时,都将发射actionTriggered信号。另外,这个喜好将关联的QAction对象的引用发送到连接的槽函数上。

实例演示2: QToolBar使用

运行代码,显示结构如下。

注意: 自己配图标文件哦

代码分析:

在这个例子中,首先调用addToolBar()方法在工具栏区域添加文件工具栏。

然后,添加具有文本标题的工具按钮,工具栏通常包含图形按钮。具有图标和名称的QAction对象将被添加到工具栏中。

最后,将actionTriggered信号连接到槽函数toolbtnpressed()。

3、QStatusBar

Main Window对象在底部保留有一个水平条,作为状态栏(QStatusBar),用于显示永久的或临时的状态信息。

通过主窗口的OMain Window的 setStatusBar()函数设置状态栏,核心代码如下:

QStatusBar类中的常用方法如下表所示:

实例演示3:QStatusBar使用

运行程序,点击File->show,显示效果如下。

代码分析:

在这个例子中,顶层窗口MainWindow有一个菜单栏和一个QTextEdit对象,作为中心控件。

当单击MenuBar的菜单时,将triggered信号与槽函数processTrigger()进行绑定。

当单击“show”菜单选项时,会在状态栏显示提示信息,并在5秒后消失。

4、QPrinter(福利赠送小节)

打印图像是图像处理软件中的一个常用功能。打印图像实际上是在QPaintDevice中画图,与平常在QWidget、QPixmap和 QImage中画图一样,都是创建一个QPainter对象进行画图的,只是打印使用的是 QPrinter,它本质上也是一个QPaintDevice(绘图设备)。

实例演示4:QPrinter使用

运行显示如下:

单击打印图标或者点击菜单栏打印/ctrl+p,显示打印界面。




菜单栏、工具栏与状态栏的评论 (共 条)

分享到微博请遵守国家法律