約10個のウィンドウを持つDelphi7プロジェクトがあります。メインウィンドウは、プログラムの起動時にロードされます。しばらくすると、MainWindowはプロジェクトの別のウィンドウにアクセスしてリストビューアイテムを追加し、約1〜2秒ごとに更新します。ただし、このウィンドウはフリーズしているようで、開いた後はリストビューがまったく表示されません。
MainWindowのOnShowプロシージャに次のコマンドがある場合、これは機能します。
SecondWindow.Show;
SecondWindow.Close;
問題なく動作しますが、専門家ではないようです。表示されずにウィンドウを描画する方法についてのアイデアはありますか?
編集:コード(私はIndy9を使用しています)
procedure TMainWindow.ServerSocketExecute(AThread: TIdPeerThread);
begin
/....
if Buffer = 'additem' then begin
Window2.ListView1.Items.Add;
Exit;
// .....
end;
end;
それでおしまい。Window2からすべてのタイマーを削除しましたが、まだフリーズしているようです。アイテムが追加されるか、2番目のウィンドウを初めて開こうとすると、mainWindowがすぐにフリーズします。