• 主页
  • Windows SDK/API
  • 基础类
  • ActiveX
  • 数据库及相关技术
  • 网络及通讯开发
  • VCL组件使用和开发

如何向 TMemo 控件发送 Control+Home 消息

LiangShengHong 2001-11-24 12:25:17
如何向 TMemo 控件发送 Control+Home 消息
下面是我的程序代码,各位高手请看错到哪里?

SendMessage(Memo1->Handle,WM_KEYDOWN,VK_CONTROL,0x001D0001);
SendMessage(Memo1->Handle,WM_KEYDOWN,VK_HOME,0x01470001);
SendMessage(Memo1->Handle,WM_KEYUP,VK_HOME,0xc1470001);
SendMessage(Memo1->Handle,WM_KEYUP,VK_CONTROL,0xc01d0001);

别告诉我用 Memo1->Perform();它根本不工作!!!
BCB Bug太多,用了这么多年的BCB我是在很伤心!!!
最简单的Bug
int a=1;
int b=0;
int c=a/b;
程序竟然不出现错误!!!

如果 Borland 公司不赶快努力的话,我将改用 VC 编写程序了!
我真的很伤心,从 BC 3.1 用到 现在从没有用过Microsoft的开发工具,到现在竟然要决定改用 VC 我真的太伤心了
...全文
129 点赞 收藏 7
写回复
7 条回复
LiangShengHong 2001年11月25日
VCL 设计的确实不是尽善尽美,用Spy++检测,发现它又很多自定义消息,各位,好好看看吧,不要因为自己不知道而怀疑问题错误,要知道只有你想不到的没有做不到了.
回复 点赞
LiangShengHong 2001年11月25日
各位,不要狡辩了,兄弟我已经编写这么多年的程序,难道连一些程序的Bug都不知道,不要自己不知道就怪别人不懂,我感打赌 VCL 又许多缺陷,就 Exception 类而言,完全用 Pascal 编写,异常处理一定懂 Ansi C++ 的异常处理又差异, BCB其实是个不伦不类的东西,真的很后悔选用 BCB 作为开发工具,并且投入太多精力,除了 RTTI(其实是 Delphi的) BCB 几乎没有什么了!!!不信你验证一下 PostMessage(Memo1->Handle,WM_KEYDOWN,VK_HOME,NULL);
Memo1->Perform(WM_CHAR,VK_KEYDOWN,NULL),后者用 Spy++根本检查不到消息!
回复 点赞
LiangShengHong 2001年11月25日
各位,不要狡辩了,兄弟我已经编写这么多年的程序,难道连一些程序的Bug都不知道,不要自己不知道就怪别人不懂,我感打赌 VCL 又许多缺陷,就 Exception 类而言,完全用 Pascal 编写,异常处理一定懂 Ansi C++ 的异常处理又差异, BCB其实是个不伦不类的东西,真的很后悔选用 BCB 作为开发工具,并且投入太多精力,除了 RTTI(
回复 点赞
jjwsoft 2001年11月24日
int a=1;
int b=0;
int c=a/b;
不可能吧,明细会出错啊。有EDivByZero异常。
Memo1->Perform(WM_KEYDOWN, VK_HOME, 0);
Memo1->Perform(WM_KEYUP, VK_HOME, 0);
也是可以成功的但是加Ctrl不成功,是由于Window消息不是那么简单两个KEY消息对就可以了。
回复 点赞
hellowbh 2001年11月24日
int a=1;
int b=0;
int c=a/b;
怎么我的程序就提示Division by zero 呢?
回复 点赞
hellowbh 2001年11月24日
SendMessage(Memo1->Handle,WM_KEYDOWN,VK_HOME,0);
Memo1->Perform(WM_KEYDOWN,VK_HOME,0);
都能发送成功按下Home的消息。


继续关注。
回复 点赞
hellowbh 2001年11月24日
先别抱怨bcb,先静下心看看、学学吧。不是bcb不能做到,而是我们自己不能作到。
回复 点赞
发动态
发帖子
C++ Builder
创建于2007-08-02

2566

社区成员

10.2w+

社区内容

C++ Builder相关内容讨论区
社区公告
暂无公告