Back to Top

VB・C#・Linux などの覚書

Category: C#

.NET C#

C# フォーム(Form)

Visual Studio等でC#を使用してGUIアプリケーションを作成する場合に使用するFormの説明です。

ウィンドウであるフォーム(Form)クラスの基本的なプロパティ・メソッド・イベント等について記載します。

 

フォームの境界線スタイルを指定する

フォームの境界線スタイルを指定するには、フォームのFormBorderStyleプロパティを使用し指定します。

FormBorderStyleプロパティはFormBorderStyle列挙体です。

 

フォームの最大化・最小化・閉じるを非表示にする

フォームの右上にある最大化、最小化ボタンの表示・非表示の設定は、MaximizeBox・MinimizeBoxプロパティを設定します。閉じるボタンの表示・非表示はControlBoxを設定します。

※閉じるボタンを非表示にすると最大化、最小化、閉じるボタンも消えます。

 

フォームの最大サイズ・最小サイズを設定する

 

フォームが最大化された時の位置とサイズを設定する

 

フォームをタスクバーに表示しない

 

フォームを常に最前面に表示する

 

フォームを閉じる

 

フォームを表示する

 

フォームをモーダルで表示する

 

フォームの表示位置を設定する

フォームの初期位置は、StartPositionプロパティをFormStartPosition列挙体で指定します。

 

フォームをアクティブにする

 

フォームを隠す

 

子コントロールが表示されているかどうか確認

 

コントロールが破壊されているかどうか

 

フォームに[OK] ボタン・[Cansel]ボタンを追加

呼び出し側

 

フォームが閉じられるのをキャンセルする

 

 

C# ネットワークカメラの画像を取得する

C#にてネットワークカメラの画像を取得する方法には、色々ありますが、

ここでは簡単に出来るMJPEG Decoderを使用して画像取得する方法を説明します。

MJPEG Decoderインストール

Visual Stadioの[ツール]-[NuGetパッケージマネージャー]-[ソリューションのNuGetパッケージの管理]を開きMJPEG Decoderを検索してインストール出来ます。

 

MJPEG Decoderによるネットワークカメラ画像取得

サンプルとして、Form上にボタンとピクチャーボックスを配置してください。

ParseStream()に渡すURLがカメラのURLになりますが、これはネットワークカメラの仕様によりことなります。(カメラの仕様を見たください)

上記に場合、http://192.168.2.100:7777/がIPアドレスとポートになります。

videostream.cgi?user=admin&pwd=adminがカメラ毎のコマンドでユーザ名・パスワードを設定しています。

 

プロトコル違反の場合

「サーバーによってプロトコル違反が発生しました. Section=ResponseHeader Detail=CR の後には LF を指定しなければなりません。」

のようなエラーが発生した場合、サーバー側の問題なのでどうしようもありません。

これの対処は、「ソリューションエクスプローラー」のApp.configに

を追加します。

 

Posted in C# | Leave a reply