開発に使用するリポジトリ
Revisión | 8ef78986ebc1cfb23fd4e5db7d68ac263ca9277b (tree) |
---|---|
Tiempo | 2013-01-13 03:43:09 |
Autor | Kimura Youichi <kim.upsilon@bucy...> |
Commiter | Kimura Youichi |
PictureBox.Visible の値の変更に何故か時間の掛かる問題の回避
@@ -84,7 +84,6 @@ namespace OpenTween | ||
84 | 84 | Assert.That(picbox.SizeMode, Is.EqualTo(PictureBoxSizeMode.Zoom)); |
85 | 85 | Assert.That(picbox.WaitOnLoad, Is.False); |
86 | 86 | Assert.That(picbox.Dock, Is.EqualTo(DockStyle.Fill)); |
87 | - Assert.That(picbox.Visible, Is.False); | |
88 | 87 | |
89 | 88 | picbox.Dispose(); |
90 | 89 | } |
@@ -124,6 +123,8 @@ namespace OpenTween | ||
124 | 123 | num++; |
125 | 124 | } |
126 | 125 | |
126 | + Assert.That(thumbbox.Controls, Is.EquivalentTo(new Control[]{ thumbbox.scrollBar }.Concat(thumbbox.pictureBox))); | |
127 | + | |
127 | 128 | Assert.That(thumbbox.scrollBar.Minimum, Is.EqualTo(0)); |
128 | 129 | Assert.That(thumbbox.scrollBar.Maximum, Is.EqualTo(count)); |
129 | 130 | } |
@@ -89,7 +89,6 @@ namespace OpenTween | ||
89 | 89 | cancelToken.ThrowIfCancellationRequested(); |
90 | 90 | } |
91 | 91 | |
92 | - this.pictureBox[0].Visible = true; | |
93 | 92 | this.scrollBar.Maximum = thumbnails.Count - 1; |
94 | 93 | |
95 | 94 | if (thumbnails.Count > 1) |
@@ -147,6 +146,7 @@ namespace OpenTween | ||
147 | 146 | for (int i = 0; i < count; i++) |
148 | 147 | { |
149 | 148 | var picbox = CreatePictureBox("pictureBox" + i); |
149 | + picbox.Visible = (i == 0); | |
150 | 150 | picbox.DoubleClick += this.pictureBox_DoubleClick; |
151 | 151 | |
152 | 152 | this.Controls.Add(picbox); |
@@ -164,7 +164,6 @@ namespace OpenTween | ||
164 | 164 | SizeMode = PictureBoxSizeMode.Zoom, |
165 | 165 | WaitOnLoad = false, |
166 | 166 | Dock = DockStyle.Fill, |
167 | - Visible = false, | |
168 | 167 | }; |
169 | 168 | } |
170 | 169 |
@@ -190,15 +189,29 @@ namespace OpenTween | ||
190 | 189 | |
191 | 190 | private void scrollBar_ValueChanged(object sender, EventArgs e) |
192 | 191 | { |
192 | + this.SuspendLayout(); | |
193 | 193 | for (var i = 0; i < this.pictureBox.Count; i++) |
194 | 194 | { |
195 | 195 | var picbox = this.pictureBox[i]; |
196 | + Console.WriteLine(this.scrollBar.Value + ", " + i); | |
196 | 197 | |
197 | 198 | if (this.scrollBar.Value == i) |
198 | 199 | picbox.Visible = true; |
199 | 200 | else |
200 | 201 | picbox.Visible = false; |
201 | 202 | } |
203 | + this.ResumeLayout(false); | |
204 | + } | |
205 | + | |
206 | + private void ShowPictureBox(int index) | |
207 | + { | |
208 | + foreach (Control control in this.Controls) | |
209 | + { | |
210 | + if (control is PictureBox) | |
211 | + this.Controls.Remove(control); | |
212 | + } | |
213 | + | |
214 | + this.Controls.Add(this.pictureBox[index]); | |
202 | 215 | } |
203 | 216 | |
204 | 217 | private void pictureBox_DoubleClick(object sender, EventArgs e) |