ListView奇怪的错误,完全正确的语句,居然出错!帮帮忙吧!(50分)

  • 主题发起人 主题发起人 lew
  • 开始时间 开始时间
L

lew

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi5,win2000 professional。

在form上放一个ListView1,再放一个Button1,写入如下代码,
procedure TForm1.Button1Click(Sender: TObject);
begin
ListView1.Visible :=false;
ListView1.MultiSelect :=true;
ListView1.Visible :=true;
end;
运行,单击Button1,再单击ListView1,立即出错,
错误意思大致是“不能聚焦到不可见window”。
有谁知道这是怎么回事???

我的程序部分的确是没有错的吧? :)
 
呵呵,有趣
 
单击Button1后,再读ListView1的Visible属性,是false,但是是可见的!

这应该是delphi5的bug吧!
 
呵呵,应该是
解决办法是用两个show

ListView1.hide;
ListView1.MultiSelect :=true;
ListView1.show;
ListView1.show;
....

跟踪了一下源码,没有什么线索,不过如果将listview的visible设为false或multi设为true
运行棋均没有问题。
 
是啊是啊,照你的试了一下,这样也行:

ListView1.Visible :=false;
ListView1.MultiSelect :=true;
ListView1.Visible :=true;
ListView1.Visible :=true;

真见鬼!
 
呵呵,我喜欢用方法,你喜欢用属性
 
接受答案了.
 
后退
顶部