这样设计主窗口的pagecontrol1激活的标签页,会导致那个标签页内所用控件消失..form1.pagecontrol1.ActivePageIndex:=2 ;
但是如果你在非线程中激活过这个标签页,或者之前你手工激活过这个标签页,那么就正常显示.另外
在线程中处理listview也会导致某个标签页所有控件消失.
用form1.ListView2.Refresh;都不管用
但是在线程处理listview之前,先手工或者在非线程中切换到这个标签页,那么显示就会正常.
var
hThread: THandle; {线程句柄}
threadid:dword;....
hthread := createthread(nil,0,@get_Search,nil,0,threadid); //用线程获取{这里是我线程的用法
get_Search() 在另外的单元
}
然后贴下我更新listview的方法var
item: TListItem;....
form1.ListView2.Items.BeginUpdate;
item := form4.ListView2.Items.Add;
item.Caption := '第 ' + IntToStr(item.Index) +'行' ;
item.SubItems.Add(Format('%d%d', [item.Index, 0]));
item.SubItems.Add(Format('test', [item.Index, 0]));
form1.ListView2.Items.EndUpdate;
form1.ListView2.Refresh;比较两个图片,
这个是自己先手工点那个标签页后才触发线程.
可以正常显示数据.然后是一个直接触发线程的.
整个标签页都空白了.