普通用户
我想实现对话框的宽度调整需要怎么写? [复制链接]
立正 发表于 2025-03-21 82 2

例如:右上角有个设置的小图标,点击后在右上角位置显示一个小的对话框用于选择一些设置,我现在的对话框宽度是屏幕宽度,我只想要一半的宽度或更小的宽度显示在右上角的位置,请问这个要怎么调整?

立正 2025-03-21

功能实现了,感谢老板,老板发财[[good]]

回复
管理员 2025-03-21

使用模态对话框或弹出式菜单组件,代码示例:

事件 按钮8.被单击(来源对象  视图)
    ' 创建一个附着菜单,并将其绑定到按钮8上面
    ' 当点击按钮8时,系统会根据界面布局情况在按钮的周围显示这个菜单
    变量 局_侧边菜单 = 创建 弹出式菜单(按钮8)
    局_侧边菜单.添加菜单项("菜单项一")
    局_侧边菜单.添加菜单项("菜单项二")
    局_侧边菜单.添加菜单项("菜单项三")
    局_侧边菜单.置菜单项被单击回调((源对象,标题)->{
        弹出提示("你点击了:" + 标题)
    })
    局_侧边菜单.显示()
结束 事件

事件 按钮9.被单击(来源对象  视图)
    变量 局_菜单框 = 创建 模态对话框()
    变量 局_菜单列表 = 创建 普通列表框()
    局_菜单列表.置图片尺寸(DP到PX(30),DP到PX(30))
    局_菜单列表.添加项目("logo.png","菜单项一","")
    局_菜单列表.添加项目("logo.png","菜单项二","")
    局_菜单列表.添加项目("logo.png","菜单项三","")
    局_菜单列表.置项目被单击回调((源对象,索引)->{
        弹出提示("菜单项点击:" + 索引 + ",标题:" + 局_菜单列表.取项目标题(索引))
        局_菜单框.关闭()
    })
    局_菜单列表.置绘制背景(创建圆角背景("#88a0ff",DP到PX(4)))
    ' 菜单列表是我们自定义创建的普通列表框,将其设置给模态对话框
    局_菜单框.置内容视图(局_菜单列表)
    局_菜单框.宽度 = DP到PX(120)
    ' 显示位置需要手动计算偏移量、默认显示坐标位置原点为:目标按钮左下角
    ' 例如:这里菜单框显示后,宽度偏移按钮宽度、高度向上平移,最终在按钮的右侧显示菜单
    局_菜单框.显示相对于组件(按钮9,按钮9.宽度,按钮9.高度 * -1,顶边靠左)
结束 事件

上述代码中使用了仓库图片文件,logo.png ,如果您在项目中使用上面的代码,请在项目仓库文件夹 assets 文件夹中放一个命名为 logo.png 的图片文件。

回复
 作者信息
立正
普通用户 云验证
专业开发指导服务

响应时间:5分钟

服务方式:官方1对1服务

工作时间:工作日 9:00 - 18:30

专业团队 · 开发指导 · 极速响应


官网 | 基础视频教程 | 在线文档 下载 VcnStudio IDE

© VcnStudio Inc All Rights Reserved

蜀ICP备17024229号