| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2130 人关注过本帖, 1 人收藏
标题:为没有TooltipText属性的控件,模拟出一个Tooltips提示框
只看楼主 加入收藏
cssnet
Rank: 5Rank: 5
等 级:职业侠客
威 望:5
帖 子:350
专家分:330
注 册:2013-10-4
收藏
得分:0 
以下是引用sam_jiang在2023-3-25 09:15:43的发言:
要改变标签的背景色,会比较麻烦,好像要用sendmessage发送一个WM_PAINT消息给标签,或是用updatewindow来实现,我对这个sendmessage不太熟悉,可能你需要@吹水佬的帮助,他对api比较熟悉。。。


不得不敲敲小黑板!顶楼的VB6代码就有前景、背景色的代码好吧:

    ' Colors.
    If lForeColor <> -1 Then SendMessage hwndTT, TTM_SETTIPTEXTCOLOR, lForeColor, 0&
    If lBackColor <> -1 Then SendMessage hwndTT, TTM_SETTIPBKCOLOR, lBackColor, 0&
    '

收到的鲜花
  • sam_jiang2023-03-25 12:29 送鲜花  1朵  
2023-03-25 10:46
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
以下是引用sam_jiang在2023-3-25 09:15:43的发言:

分行显示提示内容? 这很容易实现,把显示的内容分为“...”+chr(13)+“...”,就可以了。

要改变标签的背景色,会比较麻烦,好像要用sendmessage发送一个WM_PAINT消息给标签,或是用updatewindow来实现,我对这个sendmessage不太熟悉,可能你需要@吹水佬的帮助,他对api比较熟悉。。。

这个windows标准控件有一套专用的控制消息,可以参考MS的文档资料:

Windows控件
https://learn.

Windows控件/控件库/工具提示/工具提示控件参考/工具提示控制消息
https://learn.

图片附件: 游客没有浏览图片的权限,请 登录注册
2023-03-25 12:29
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:786
专家分:1160
注 册:2021-10-13
收藏
得分:0 
鍥炲 21妤
鏀瑰ぉ绌轰簡缈昏瘧鐪嬬湅
2023-03-25 13:09
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
以下是引用cssnet在2023-3-23 15:07:43的发言:

确实,楼主搞搞阵冇帮衬,折腾了一大圈,想要静鸡鸡顺手解决掉的,也正是Unicode版的TooltipText。
若纯是ANSI版的话,可能也没那么大的兴致了。

用VFP封装Windows全部标准控件,VFP的Unicode就不是问题了。好像 Delphi VCL 的 TWinControl 类,也是封装Windows的标准控件。
2023-03-25 19:38
csyx
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:火星
等 级:版主
威 望:37
帖 子:703
专家分:2780
注 册:2018-3-13
收藏
得分:0 
以下是引用吹水佬在2023-3-25 19:38:01的发言:
用VFP封装Windows全部标准控件,VFP的Unicode就不是问题了。好像 Delphi VCL 的 TWinControl 类,也是封装Windows的标准控件。

不是问题吗?只不过能勉强支持输出而已,其他问题仍然大着,源码不能用unicode编码保存就是问题,即使换个编辑器可以保存unicode编码格式的源码,调试器支持吗?build 支持吗?

这家伙很懒,啥也没留下
2023-03-25 19:59
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
以下是引用csyx在2023-3-25 19:59:15的发言:
不是问题吗?只不过能勉强支持输出而已,其他问题仍然大着,源码不能用unicode编码保存就是问题,即使换个编辑器可以保存unicode编码格式的源码,调试器支持吗?build 支持吗?

个人理解:
VFP的unicode问题是相对的,主要是数据I/O部份,能解决实际应用问题就算不是问题了。
在此也只是针对Windows标准控件而言,其他的不能用Windows标准控件的就另当别论。
VFP源码和编译无需使用unicode编码。
调试器I/O部份可以通过一些调试手段解决。
当然了,既然要求变,想百份百忠诚VFP原意是不可能的,不破不立。

说归说,做归做。
VFP要真像Delphi那样封装Windows控件不是说到就能做得到,能做得到也不一定能做得好。
Delphi与MFC的封装不同,Delphi的数据感知封装初给人的感觉很好,但当数据规模大到一定时性能大大下降的缺点就可能令人难以接受。





2023-03-25 20:41
csyx
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:火星
等 级:版主
威 望:37
帖 子:703
专家分:2780
注 册:2018-3-13
收藏
得分:0 
六年前,从我开始学习使用vfp开始,每个人的电脑上就有一整套的 Microsoft Forms 2.0 基本控件,全部支持 unicode,可是 vfp 不支持 unicode 一直都还是被诟病的主要原因,并没有因为有这些支持 unicode 的控件而消失
没有底层支持,这类修修补补对 vfp coder 来说,unicode I/O 实现就是一件丑陋和痛苦的事情

[此贴子已经被作者于2023-3-25 20:59编辑过]


这家伙很懒,啥也没留下
2023-03-25 20:55
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
今时今日对VFP就不能要求太多了,VFP不可能再现当初的光彩,能活下去才是硬道理。
那怕是能解决一个小小的unicode的Tooltips提示问题,也算是给VFP注入一点新鲜空气,丑陋就不见得,痛苦一点又算什么。
2023-03-25 21:17
cssnet
Rank: 5Rank: 5
等 级:职业侠客
威 望:5
帖 子:350
专家分:330
注 册:2013-10-4
收藏
得分:0 
以下是引用吹水佬在2023-3-25 19:38:01的发言:
好像 Delphi VCL 的 TWinControl 类,也是封装Windows的标准控件。


不知今时今日,用Delphi的人,还多不多?
印象中,我老人家曾用Delphi 6/7编写过软件,Delphi的效率很高,但是……编译出来的软件,好像总会随机地遇到一些莫名其妙的错误,总是给我一种错觉:
我说,是不是微软在操作系统底层暗地里搞鬼啊?Windows但凡监测到Delphi编译的软件,就随机地抛出各种异常来,让用户对Delphi敬而远之?
嗯……极有可能!

2023-03-25 22:07
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
以下是引用cssnet在2023-3-25 22:07:01的发言:

不知今时今日,用Delphi的人,还多不多?

Delphi自从被Borland出卖后就没有关注过。虽然也是被出卖,VFP的命运就悲惨。
Delphi被改名拆分后发展方向主要是多平台/跨平台移动开发。
当年国内的Delphi论坛(大富翁论坛)还真够热闹,那情景现在的编程论坛可能难再见到。

[此贴子已经被作者于2023-3-26 14:09编辑过]

2023-03-26 10:54
快速回复:为没有TooltipText属性的控件,模拟出一个Tooltips提示框
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019188 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved