qt抽屉菜单_树莓派Qt系列教程26:Menu、Popup和Drawer

前言这一节继续为大家讲解QML中一些比较有意思的控件。这一节我们要说的控件是菜单按钮Menu、弹出窗口Popup和侧滑抽屉Drawer。

菜单按钮 MenuMenu其实就是我们打来一个软件时出现的菜单项,菜单主要有两个使用方法,第一个是用作上下文菜单,比如说右键单击后显示的菜单。还有一个就是用作弹出菜单,比如说单击按钮后显示的菜单。通常,我们想要在菜单中显示一个项目,需要用到MenuItem,它提供一种熟悉的方式来响应被触发的菜单项。它有一个触发信号triggered()。

Menu的属性(大部分是从Qt5.10引入的)cascade : 保存菜单是否级联其子菜单

contentData : 保存内容数据列表

contentModel : 保存用于显示菜单项的模型

count : 保存项目数

currentIndex : 保存当前突出显示的项目的索引

delegate : 保存用于创建项目以表示操作的组件

focus : 保存弹出窗口是否需要焦点

overlap : 保存菜单水平重叠其父菜单的像素数量

title : 保存菜单的标题

Menu的方法(大部分是从Qt5.10引入的)

因为menu的方法函数太多了,所以我们列举部分方法函数,没提及的大家可以参考链接Action actionAt(index): 返回index处的操作,如果index无效则返回null

void addAction(action): 将操作添加到此菜单的末尾

void addItem(item): 将项目添加到项目列表的末尾

void addMenu(menu): 将菜单作为子菜单添加到此菜单的末尾

void dismiss(): 关闭该菜单所属层次结构中的所有菜单

弹出式菜单void popup(parent, real x, real y, MenuItem item = null): 在弹出式坐标系中指定位置x,y处打开菜单,即相对于其父项的坐标。

void popup(parent, point pos, MenuItem item = null):在弹出式坐标系中指定位置pos处打开菜单,即相对于其父项的坐标

void popup(parent, MenuItem item = null):在具有可用鼠标光标的台式机平台上,使用鼠标光标打开菜单,否则将菜单置于其父项上方

Menu的使用

使用Menu时需要导入控件库,另外需要注意,因为其大部分的属性和方法都是基于Qt5.10的,所以Qt的版本必须在5.10及以上,要不然很容易报错的。

上下文菜单

当用作上下文菜单时,建议打开菜单的方法是调用popup()。如果没有指定位置的话,菜单将位于具有鼠标

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值