TC官方合作论坛

标题: 求颜色面板 颜色显示方法: [打印本页]

作者: apaik    时间: 2015-3-26 19:06
标题: 求颜色面板 颜色显示方法:
本帖最后由 apaik 于 2015-3-27 15:07 编辑

求下图颜色代码值右边的颜色,图标怎么弄,还有如何打开颜色面板,选择颜色。
http://bbs.tyuyan.com/forum.php? ... =%E9%A2%9C%E8%89%B2
求这图源码或做法
[attach]19427[/attach]



[attach]19428[/attach]







作者: 超自然    时间: 2015-3-26 20:43
系统_.颜色选择框(父窗口句柄=0)
http://bbs.tyuyan.com/thread-38424-1-1.html
作者: 言术    时间: 2015-3-26 20:47
拖个标签,把文本清空,使用下列函数设置标签背景颜色:
5.0--------标签设置颜色("标签0",#ff00ff,1)
4.0--------标签.设置颜色("标签0",#ff00ff,1)

作者: apaik    时间: 2015-3-26 20:48
言术 发表于 2015-3-26 20:47
拖个标签,把文本清空,使用下列函数设置标签背景颜色:
5.0--------标签设置颜色("标签0",#ff00ff,1)
4.0- ...

试了的,总是返回错误,用的4.0
作者: 言术    时间: 2015-3-26 20:52
apaik 发表于 2015-3-26 20:48
试了的,总是返回错误,用的4.0

不应该啊,能截个图看看吗?返回的是什么错误?
作者: apaik    时间: 2015-3-26 20:58
言术 发表于 2015-3-26 20:47
拖个标签,把文本清空,使用下列函数设置标签背景颜色:
5.0--------标签设置颜色("标签0",#ff00ff,1)
4.0- ...

因为不能直接给出值,需要读取文本的值。[attach]19430[/attach]

作者: 言术    时间: 2015-3-26 21:13
apaik 发表于 2015-3-26 20:58
因为不能直接给出值,需要读取文本的值。

因为你的变量是字符型,而设置颜色需要整型,转换一下类型就好了
  1. 字符1="ff8800"
  2. 字符1=类型.转整型(字符1,1)
  3. 调试输出(字符1)
  4. 标签.设置颜色("标签0",字符1,1)
复制代码


作者: apaik    时间: 2015-3-26 21:40
言术 发表于 2015-3-26 21:13
因为你的变量是字符型,而设置颜色需要整型,转换一下类型就好了

你好,谢谢,非常感谢,弄了2个小时了,5.0可以直接用不用转换。[attach]19431[/attach]

对了,我现在想调用一个颜色面板,选取颜色,然后把选取的颜色的16进制给另外的编辑框,然后输出(输出已经会了)。


但不知道怎么调用颜色面板,选择颜色,获取16进制值?能讲讲思路吗?我相信大大超自然大大不缺分把。这个采纳给你。

作者: 言术    时间: 2015-3-26 21:56
apaik 发表于 2015-3-26 21:40
你好,谢谢,非常感谢,弄了2个小时了,5.0可以直接用不用转换。

对了,我现在想调用一个颜色面板,选取 ...

获取的时候用个变量保存下颜色值吧,获取的话。。。这个不就不知道该怎么办了
作者: 超自然    时间: 2015-3-26 22:00
apaik 发表于 2015-3-26 21:40
你好,谢谢,非常感谢,弄了2个小时了,5.0可以直接用不用转换。

对了,我现在想调用一个颜色面板,选取 ...

调用我那个方法,会弹出系统颜色选择框,返回值是你选的十进制颜色值,用个变量保存起来,下面用字符串格式化("%x",返回值)直接就成十六进表示的了
作者: apaik    时间: 2015-3-26 22:33
超自然 发表于 2015-3-26 22:00
调用我那个方法,会弹出系统颜色选择框,返回值是你选的十进制颜色值,用个变量保存起来,下面用字符串格式化 ...

...看了一下,不知道怎么用,那里可以查到教程啊?谢谢
作者: 超自然    时间: 2015-3-26 22:35
apaik 发表于 2015-3-26 22:33
...看了一下,不知道怎么用,那里可以查到教程啊?谢谢

解压,里面有个tll文件,放到你工程的.t文件目录下
在TC里面就像官方API一样调用
打开里面的帮助文档,里面有你需要知道的一切
注意分两个版本,和你使用的TC程序版本要对应
作者: apaik    时间: 2015-3-26 22:53
超自然 发表于 2015-3-26 22:35
解压,里面有个tll文件,放到你工程的.t文件目录下
在TC里面就像官方API一样调用
打开里面的帮助文档,里面 ...

[attach]19436[/attach]
试了几次都出错。应该怎么写呢?

作者: apaik    时间: 2015-3-27 08:50
超自然 发表于 2015-3-26 22:35
解压,里面有个tll文件,放到你工程的.t文件目录下
在TC里面就像官方API一样调用
打开里面的帮助文档,里面 ...

有没有单独的颜色面板的tll,机器运行好卡
作者: 超自然    时间: 2015-3-27 11:08
4.43就那样,不完全是tll的问题
写和调试的过程可以用4.31,这版本速度快,
全部弄完了如果还喜欢4.4版本,就把tll换成4.4的,再用4.4生成一次就可以了
作者: apaik    时间: 2015-3-27 11:45
超自然 发表于 2015-3-27 11:08
4.43就那样,不完全是tll的问题
写和调试的过程可以用4.31,这版本速度快,
全部弄完了如果还喜欢4.4版本,就把 ...

这样啊,4版本以后不改进了?
作者: apaik    时间: 2015-3-27 12:49
超自然 发表于 2015-3-27 11:08
4.43就那样,不完全是tll的问题
写和调试的过程可以用4.31,这版本速度快,
全部弄完了如果还喜欢4.4版本,就把 ...

你好,还要麻烦你帮忙分析一下,
我用的“5.033.0(4.431版本)发布包”,我的tc版本是:TC4.431
代码如下:

功能 取色0_点击()
//这里添加你要执行的代码
    取色001=系统_.颜色选择框(0)
    辅助.消息框(取色001)
    取色0001=字符串.格式化("%x",取色001)
    辅助.消息框(取色0001)
    编辑框.设置文本("编辑框6",取色0001,"配置颜色") //设置编辑框内容
    取色0001=类型.转整型(取色0001,1)
    调试输出(取色0001)
    标签.设置颜色("标签13",取色0001,1,"配置颜色")//设置背景颜色
功能结束

因为我鼠标点的颜色和获取的颜色值不一样,我就加了消息框看数值,结果如下2个图。
我点击的左上角的类似粉色的那个,但实际得出的值,是蓝色的。
[attach]19440[/attach]
[attach]19441[/attach]


作者: 超自然    时间: 2015-3-27 14:09
本帖最后由 超自然 于 2015-3-27 14:20 编辑
apaik 发表于 2015-3-27 12:49
你好,还要麻烦你帮忙分析一下,
我用的“5.033.0(4.431版本)发布包”,我的tc版本是:TC4.431
代码如下 ...

去了解一下RRGGBB颜色格式和BBGGRR,转换一下就好
支持库返回的是rgb格式,TC用的是bgr

作者: apaik    时间: 2015-3-27 14:24
超自然 发表于 2015-3-27 14:09
去了解一下RRGGBB颜色格式和BBGGRR,转换一下就好
支持库返回的是rgb格式,TC用的是bgr
...

这个怎么转换?因为位数不一样,16进制,有的6位,有的4位
作者: apaik    时间: 2015-3-27 14:55
本帖最后由 apaik 于 2015-3-27 15:21 编辑
超自然 发表于 2015-3-27 14:09
去了解一下RRGGBB颜色格式和BBGGRR,转换一下就好
支持库返回的是rgb格式,TC用的是bgr
...

转换太难,ffff就可能是ff00ff,00ffff,ffff00,还有3位数16进制的更麻烦。
作者: apaik    时间: 2015-3-27 15:13
超自然 发表于 2015-3-27 14:09
去了解一下RRGGBB颜色格式和BBGGRR,转换一下就好
支持库返回的是rgb格式,TC用的是bgr
...

这转换好难,因为可以是r为0,或g为0,b为0。把十进制转十六进制,就混了。
作者: 超自然    时间: 2015-3-27 15:37
功能 开始_点击()
    var 值=系统_.颜色选择框(窗口.自身句柄()),R,G,B
    color.hextorgb(值,R,G,B)
    值=color.rgbtohex(B,G,R)
    标签.设置颜色("标签0",值,1)
功能结束
作者: apaik    时间: 2015-3-27 16:44
超自然 发表于 2015-3-27 15:37
功能 开始_点击()
    var 值=系统_.颜色选择框(窗口.自身句柄()),R,G,B
    color.hextorgb(值,R,G,B)

非常感谢,完美解决了。原来要用自带的rgb转换。




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1