选项全是图标的下拉列表框组合框是怎么做的?

ooolinux 2019-08-25 07:25:05
如图:
...全文
336 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
ooolinux 2019-08-30
  • 打赏
  • 举报
回复
引用 14 楼 哥不写程序好多年 的回复:
[quote=引用 8 楼 ooolinux 的回复:] 帮我看看这个: 有没有TreeView控件的典型或者实际用途用法及其示例代码或截图,可以是静态、动态创建生成树形结构的(除了文件系统目录树) https://bbs.csdn.net/topics/393545561
静态创建很简单,无需代码,修改Items即可;动态可以搜索以前的帖子很多。[/quote] 没错。
ooolinux 2019-08-30
  • 打赏
  • 举报
回复
引用 13 楼 哥不写程序好多年 的回复:
ListView
用ListView也不错,大图标通常不是有文字吗?你这个怎么来触发ListView显示和隐藏?
ooolinux 2019-08-30
  • 打赏
  • 举报
回复
引用 17 楼 哥不写程序好多年 的回复:
[quote=引用 15 楼 ooolinux 的回复:]

用ListView也不错,大图标通常不是有文字吗?你这个怎么来触发ListView显示和隐藏?


动态可以只加载图片,不加载文字。单击头像触发,鼠标离开ListView或选择后,关闭
[/quote]

用自绘制其实也不麻烦,高版本有TComboBoxEx。
  • 打赏
  • 举报
回复
动态可以只加载图片,不加载文字。属性中要设置好LIstView的显示方式
  • 打赏
  • 举报
回复
引用 15 楼 ooolinux 的回复:
用ListView也不错,大图标通常不是有文字吗?你这个怎么来触发ListView显示和隐藏?


动态可以只加载图片,不加载文字。单击头像触发,鼠标离开ListView或选择后,关闭
ooolinux 2019-08-29
  • 打赏
  • 举报
回复
引用 9 楼 draculamx 的回复:
注意看Selected Image这个区域,显示你的图形长和宽都是16的,不是128的。。。 你用的图片是ICO格式的吗?ICO格式是比较特殊的,一个ICO文件中,可以包含多个尺寸的,具体你可以找一个ICO软件打开看看就知道了,你可以用ICO软件,把你不需要的尺寸都剔除
是PNG格式的图片,我重新添加了图片资源,按照128x128的固定大小(默认是按照16x16),但是显示效果还是有锯齿。
  • 打赏
  • 举报
回复
引用 8 楼 ooolinux 的回复:
帮我看看这个:
有没有TreeView控件的典型或者实际用途用法及其示例代码或截图,可以是静态、动态创建生成树形结构的(除了文件系统目录树)
https://bbs.csdn.net/topics/393545561


静态创建很简单,无需代码,修改Items即可;动态可以搜索以前的帖子很多。
  • 打赏
  • 举报
回复
ListView
draculamx 2019-08-29
  • 打赏
  • 举报
回复
引用 6 楼 ooolinux 的回复:
[quote=引用 3 楼 早打大打打核战争 的回复:]
不需要自绘制,VCL有一个TComboBoxEx,FMX的组合框本来就支持ImageList


为什么FMX组合框的选项的图标显示有锯齿?我用了Scale为2,图片像素都是128px以上的,如图:

[/quote]
注意看Selected Image这个区域,显示你的图形长和宽都是16的,不是128的。。。
你用的图片是ICO格式的吗?ICO格式是比较特殊的,一个ICO文件中,可以包含多个尺寸的,具体你可以找一个ICO软件打开看看就知道了,你可以用ICO软件,把你不需要的尺寸都剔除
ooolinux 2019-08-29
  • 打赏
  • 举报
回复
帮我看看这个: 有没有TreeView控件的典型或者实际用途用法及其示例代码或截图,可以是静态、动态创建生成树形结构的(除了文件系统目录树) https://bbs.csdn.net/topics/393545561
ooolinux 2019-08-29
  • 打赏
  • 举报
回复
引用 11 楼 早打大打打核战争 的回复:
用scale放大combobox里的图确实有那样的问题,我估计他的scale处理是将绘制好的小图再缩放的,所以不管原图分辨率多高,scale大了之后效果都不好。可以用style设计器来修改图标大小,不过我没找到设计combobox里那个列表框的方法,怎么只能设计下拉框?可能我没掌握方法... 先整个修改listbox图标的效果吧,只需要在style设计器里把对应listboxitem的glyphstyle的显示框拖拉一个合适的大小即可,秒速完成:
ListBox比较好弄,好像设置了listboxitem的高度图片会自动适应变大。 ComboBox是包含了一个ListBox,不过不好设计,感觉FMX这一点可以改进。
abc_ustone 2019-08-29
  • 打赏
  • 举报
回复
看看
ooolinux 2019-08-29
  • 打赏
  • 举报
回复
引用 3 楼 早打大打打核战争 的回复:
不需要自绘制,VCL有一个TComboBoxEx,FMX的组合框本来就支持ImageList
为什么FMX组合框的选项的图标显示有锯齿?我用了Scale为2,图片像素都是128px以上的,如图:
  • 打赏
  • 举报
回复
用scale放大combobox里的图确实有那样的问题,我估计他的scale处理是将绘制好的小图再缩放的,所以不管原图分辨率多高,scale大了之后效果都不好。可以用style设计器来修改图标大小,不过我没找到设计combobox里那个列表框的方法,怎么只能设计下拉框?可能我没掌握方法... 先整个修改listbox图标的效果吧,只需要在style设计器里把对应listboxitem的glyphstyle的显示框拖拉一个合适的大小即可,秒速完成:

draculamx 2019-08-28
  • 打赏
  • 举报
回复
http://outofmemory.cn/code-snippet/14288/Delphi-combobox-border-display-picture
这里是一个自绘的例子
draculamx 2019-08-28
  • 打赏
  • 举报
回复
选一个第三方控件,devexpress,businessskinform,等等,用原生控件,你就只有继承,自己写代码,没那必要。。
ooolinux 2019-08-28
  • 打赏
  • 举报
回复
引用 3 楼 早打大打打核战争 的回复:
不需要自绘制,VCL有一个TComboBoxEx,FMX的组合框本来就支持ImageList


有空我试下。
ooolinux 2019-08-28
  • 打赏
  • 举报
回复
引用 1 楼 draculamx 的回复:
选一个第三方控件,devexpress,businessskinform,等等,用原生控件,你就只有继承,自己写代码,没那必要。。


引用 2 楼 draculamx 的回复:
http://outofmemory.cn/code-snippet/14288/Delphi-combobox-border-display-picture
这里是一个自绘的例子


三方控件,或者自绘制代码也不长。
  • 打赏
  • 举报
回复
不需要自绘制,VCL有一个TComboBoxEx,FMX的组合框本来就支持ImageList

13,824

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧