質問するログイン新規登録

回答編集履歴

1

見直しキャンペーン中

2023/07/29 08:16

投稿

TN8001
TN8001

スコア10180

answer CHANGED
@@ -1,27 +1,28 @@
1
- [Webカメラを利用してQRコードを読み込むWindowsアプリを作る | すずきライフ](https://belltree.life/windows-qr-code/)
1
+ [Webカメラを利用してQRコードを読み込むWindowsアプリを作る | すずきライフ](https://belltree.life/windows-qr-code/)
2
+
2
- [WebBrowserコントロール内のテキストボックスに文字列をセットするには?[2.0、C#、VB]:.NET TIPS - @IT](https://atmarkit.itmedia.co.jp/ait/articles/0904/02/news116.html)
3
+ [WebBrowserコントロール内のテキストボックスに文字列をセットするには?[2.0、C#、VB]:.NET TIPS - @IT](https://atmarkit.itmedia.co.jp/ait/articles/0904/02/news116.html)
3
-
4
+
4
- この2つの記事を合体させたいわけですね。
5
+ この2つの記事を合体させたいわけですね。
5
-
6
-
6
+
7
+
7
- 現状は`Document`がnullだからエラーになってるんですよね?
8
+ 現状は`Document`がnullだからエラーになってるんですよね?
8
- つまりページが読み込まれる前に、`ProgressChanged`に来てしまっている。と
9
+ つまりページが読み込まれる前に、`ProgressChanged`に来てしまっている。と
9
-
10
+
10
- ならnullチェックするだけでは?
11
+ ならnullチェックするだけでは?
11
-
12
+
12
- ほかの要素もnullになるかもしれないし、`reader.Decode`も例外を出すことがあるようなので不完全ですがこんなイメージで。
13
+ ほかの要素もnullになるかもしれないし、`reader.Decode`も例外を出すことがあるようなので不完全ですがこんなイメージで。
13
- ```C#
14
+ ```cs
14
- private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
15
+ private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
15
- {
16
+ {
16
- graphic.DrawImage(bmp, 0, 0, frame.Cols, frame.Rows);
17
+ graphic.DrawImage(bmp, 0, 0, frame.Cols, frame.Rows);
17
-
18
+
18
- if (webBrowser1.Document == null) return; // まだ読み込み中なら入れようがない
19
+ if (webBrowser1.Document == null) return; // まだ読み込み中なら入れようがない
19
-
20
+
20
- string text = scancode();
21
+ string text = scancode();
21
- if (string.IsNullOrEmpty(text)) return; // バーコードが写っていないとnull?Empty?例外?(私は知りません)
22
+ if (string.IsNullOrEmpty(text)) return; // バーコードが写っていないとnull?Empty?例外?(私は知りません)
22
-
23
+
23
- HtmlElementCollection all = webBrowser1.Document.All;
24
+ HtmlElementCollection all = webBrowser1.Document.All;
24
- HtmlElementCollection forms = all.GetElementsByName("EnterNo");
25
+ HtmlElementCollection forms = all.GetElementsByName("EnterNo");
25
- forms[0].InnerText = text;
26
+ forms[0].InnerText = text;
26
- }
27
+ }
27
28
  ```