質問編集履歴

2

「Timer が何か不明ですが2ミリ秒ですよね?短すぎませんか?」への回答

2020/01/15 09:36

投稿

narikakun
narikakun

スコア5

test CHANGED
File without changes
test CHANGED
@@ -73,3 +73,17 @@
73
73
  ## CPUの使用率に関して
74
74
 
75
75
  CPUは、Intel Corei7-6700Kを使用しており、ラベルのテキスト量を増やすと10%ほどまで上がります。
76
+
77
+
78
+
79
+ ## 追記
80
+
81
+ > Timer が何か不明ですが2ミリ秒ですよね?
82
+
83
+ > 短すぎませんか?
84
+
85
+
86
+
87
+ Timerの時間は、これがちょうどいい感じなんです。
88
+
89
+ 別にTimerの時間を長くしても、CPU使用率はあまり変わりませんでした。

1

コードを追加、CPUの使用率に関してを追加

2020/01/15 09:36

投稿

narikakun
narikakun

スコア5

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- ### 前提・実現したいこと
1
+ ## 前提・実現したいこと
2
2
 
3
3
  C#にて右から左に横スクロールするテロップソフトを作っているのですが、テキスト量を増やしてしまうとどうしてもCPU使用率が上がってしまいます。
4
4
 
@@ -6,10 +6,70 @@
6
6
 
7
7
 
8
8
 
9
- ### 発生している問題・エラーメッセージ
9
+ ## 発生している問題・エラーメッセージ
10
10
 
11
11
  ラベルにてテキスト量を増やして右から左に横スクロールするプログラムでCPU使用率が上がる。
12
12
 
13
13
 
14
14
 
15
+ ## テキストをスクロールするところのコード
16
+
17
+ ### public
18
+
19
+ ```
20
+
21
+ public int i;
22
+
23
+ public int scrollspeed = 2;
24
+
25
+ ```
26
+
27
+ ### フォームロード部分
28
+
29
+ ```
30
+
31
+ label1.Text = "ここにテロップのテキスト";
32
+
33
+ i = this.Size.Width;
34
+
35
+ label1.Location = new Point(i, 1);
36
+
37
+ timer1.Interval = 2;
38
+
39
+ timer1.Start();
40
+
41
+ i = -1000000000;
42
+
43
+ ```
44
+
45
+ ### タイマー部分
46
+
47
+ ```
48
+
49
+ if (label1.Location.X <= (0 - label1.Size.Width))
50
+
51
+ {
52
+
53
+ i = this.Size.Width;
54
+
55
+ label1.Location = new Point(i, 1);
56
+
57
+ }
58
+
59
+ else
60
+
61
+ {
62
+
63
+ label1.Location = new Point(i, 1);
64
+
15
- 教えていただければありがたいです。
65
+ i -= scrollspeed;
66
+
67
+ }
68
+
69
+ ```
70
+
71
+
72
+
73
+ ## CPUの使用率に関して
74
+
75
+ CPUは、Intel Corei7-6700Kを使用しており、ラベルのテキスト量を増やすと10%ほどまで上がります。