精易论坛

标题: [IMGUI]易语言imgui入门第四课,改变组件属性与颜色 [打印本页]

作者: xiaolin666    时间: 2024-11-8 22:48
标题: [IMGUI]易语言imgui入门第四课,改变组件属性与颜色
本帖最后由 xiaolin666 于 2024-11-8 23:54 编辑

教学模块为论坛的1.77模块,无模块守护,还担心的可以源码重新编译一个。指路:【新提醒】ImGui 1.77最新最全库函数封装,UI库的又一新选择!_精易论坛.
今天晚上有空,爆更一下把入门篇完结。。
' 这节课我们主要讲组件的常规改法
' imgui中的组件有三种常见属性
' color  也就是颜色,不是U32就是imvec4,其实都是RGBA的变体
例如 ImVec4 (1, 1, 1, 1)

' size  也就是二维坐标,不是Imvec2就是Max或者Min
例如ImVec2 (X, Y)
' 这个MAX和MIN其实就是矩形的两个角,所以addrect[绘制方框]的时候画歪的原因正是如此
' 见下图

' MIN———————————————————————————————————
' |                                                                                                         |
' |                                                                                                         |
' |                                                                                                         |
' |                                                                                                         |
' |                                                                                                         |
' |                                                                                                         |
' |                                                                                                         |
' |                                                                                                         |
' ————————————————————————————————————MAX

' 大概就是如此
' 第三种属性是整数型的idx,
' 就是写你要修改的组件名,例如:
' #IMGUICOL_FRAMEBG          组件普通状态
' #IMGUICOL_FRAMEBGACTIVE    组件被鼠标点击状态
' #IMGUICOL_FRAMEBGHOVERED  组件被鼠标进入状态



' ImGui.PushItemWidth (这里写宽度)  ' 组件宽度
' ImGui.PopItemWidth ()  ' 还原组件宽度

' ImGui.PushStyleVarVec2 (X坐标,Y坐标 )  ' 修改组件坐标
' ImGui.PushStyleVarFloat (#imguicol_组件,样式的值[小数] )  ' 置一些浮点属性,比如圆角,边框厚度等
' ImGui.PopStyleVar ()还原组件样式类的修改


' ImGui.PushStyleColorU32 (#imguicol_组件, ImGui.ColorConvertFloat4ToU32 (ImVec4 (1, 1, 1, 1)))  ' 整数型的颜色

' ImGui.PushStyleColorVec4 (#imguicol_组件, ImVec4 (1, 1, 1, 1))  ' RGBA的颜色
' ImGui.PopStyleColor ()’还原颜色的修改


' 常量也同样分为三种属性:
' #IMGUICOL_  组件颜色属性
' #IMGUIWINDOWFLAGS_    窗口风格
' #IMGUISTYLEVAR_        组件样式属性

' 一般组件颜色修改也分为三种属性
' bg  普通背景
' Active   被触发,按下
' Hovered  组件有了鼠标焦点时显示的颜色



好了,掌握这些,其实你已经可以利用原生函数DIY出差不多的组件了,我们下节课,最终课,演示如何设计布局,如何做大标题,如何利用addrect    addtext  等上层绘制函数手画填选框


放个下期预告,下期差不多就是入门篇大结局了,学完这些不说写出多好看的UI,但cv别人的也会更清晰更明了,仿造也不算特别高难度了
这比蓝黑界面好看太多了吧




补充内容 (2024-11-11 17:28):
https://125.confly.eu.org/thread-14839974-1-1.html
补充一个全局风格结构体,可以通过结构体修改全局颜色

4.实战push与pop,改变单个组件或窗口的风格.zip

1.35 MB, 下载次数: 13, 下载积分: 精币 -2 枚


作者: xiaolin666    时间: 2024-11-8 22:51
顺便再问一下,如何设置免费附件啊,感觉这种每一课的代码没有付费的必要
作者: zhangbiao    时间: 2024-11-8 22:54
感谢分享
作者: qqmqqg    时间: 2024-11-8 23:17
6666666666666666666
作者: 神一样的人猫腻    时间: 2024-11-8 23:34
感谢分享
作者: kyo9766    时间: 2024-11-9 08:50
xiaolin666 发表于 2024-11-8 22:51
顺便再问一下,如何设置免费附件啊,感觉这种每一课的代码没有付费的必要 ...

附件下载是系统自动收取的
作者: 我爱阿妹i    时间: 2024-11-9 19:08
感谢发布原创作品,精易因你更精彩!

作者: 396384183    时间: 2024-11-9 20:29

感谢分享
作者: year1970    时间: 2024-11-10 08:28
感谢分享
作者: 深圳梦    时间: 2024-11-10 12:42
感谢分享,很给力!~
作者: wan942182718    时间: 2024-11-12 09:05
不明所以,一头雾水,懵逼
作者: 熊不熊    时间: 2024-12-4 03:27
感谢分享,很给力!~
作者: 阎王66    时间: 2024-12-4 03:41
6666666666666666666666666666
作者: 冰封心    时间: 2025-2-23 22:27





欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4