リビジョン | 7b490d773386e7f9c19dec283ed8bdd9895daf97 (tree) |
---|---|
日時 | 2021-05-02 15:52:46 |
作者 | Kazuhiro Fujieda <fujieda@user...> |
コミッター | Kazuhiro Fujieda |
OS再起動時に一覧ウィンドウが全部保存されないのを直す
@@ -100,5 +100,16 @@ namespace KancolleSniffer.Forms | ||
100 | 100 | foreach (var listForm in _listForms) |
101 | 101 | action(listForm); |
102 | 102 | } |
103 | + | |
104 | + public void WaitForCloseAll() | |
105 | + { | |
106 | + var start = DateTime.Now; | |
107 | + do | |
108 | + { | |
109 | + Application.DoEvents(); | |
110 | + if (_listForms.All(listFrom => !listFrom.Visible)) | |
111 | + return; | |
112 | + } while ((DateTime.Now - start).TotalSeconds < 5); | |
113 | + } | |
103 | 114 | } |
104 | 115 | } |
\ No newline at end of file |
@@ -256,6 +256,7 @@ namespace KancolleSniffer | ||
256 | 256 | } |
257 | 257 | if (!SystemShutdown) |
258 | 258 | _listFormGroup.Close(); // 各自で終了処理するのでシャットダウン時は不要 |
259 | + _listFormGroup.WaitForCloseAll(); | |
259 | 260 | Config.Location = (Form.WindowState == FormWindowState.Normal ? Form.Bounds : Form.RestoreBounds).Location; |
260 | 261 | Config.ShowHpInPercent = _c.fleetPanel.ShowHpInPercent; |
261 | 262 | } |