.NET Framework

Panel.BorderStyle

Panel.BorderStyleでPanelの境界線を設定できる。Panel.BorderStyle プロパティ (System.Windows.Forms) | Microsoft Docs NoneにしてあるNoneにしてある。 実行すると、境界線が表示されない。実行すると、境界線が表示されない。 FixedSingleにするFixedSi…

Form.ClientSize

Formのクライアント領域のサイズは、Form.ClientSizeで取得できる。Form.ClientSize プロパティ (System.Windows.Forms) | Microsoft DocsPanelのSizeをこれに合わせるとぴったりになる。こうすると、 最初こうだけど最初こうだけど、 右下に引っ張ると、す…

Control.Size

Control.Sizeで、コントロールのサイズをセットする。Control.Size プロパティ (System.Windows.Forms) | Microsoft Docs Form.Sizeがこれぐらいとして、Panelもぴったり貼りたい。Form.Sizeがこれぐらいとして、Panelもぴったり貼りたい。Form1のSizeをpane…

Control.Location

Control.Locationで、コントロールの位置を調整する。Control.Location プロパティ (System.Windows.Forms) | Microsoft DocsPanelを貼る時に、 適当に位置を決めて貼っているので、こういう風にLocationの値は適当。適当に位置を決めて貼っているので、こう…

Control.BackColor

コントロールに背景色を付ける場合は、Control.BackColorに手動でColorをセットする。Control.BackColor プロパティ (System.Windows.Forms) | Microsoft Docs こんな感じでPanelを配置こんな感じでPanelを配置。 プロパティをForm1に切り替えプロパティをFo…

Panel

Panelは、複数コントロールのグループ化に使う。 Panelの上に、いくつかControlを置いて、Panelごと表示/非表示を切り替えたりできる。Panel クラス (System.Windows.Forms) | Microsoft Docs Formを大きめに拡げるFormを大きめに拡げる。 ツールボックスか…

Color.FromArgb

Color.FromArgbでA, R, G, Bの各成分を個別に指定することもできる。Color.FromArgb メソッド (System.Drawing) | Microsoft Docs今回は、3つの引数のバージョンなので、R成分、G成分、B成分を指定。 このバージョンでは、自動的にA成分(アルファ値)は255(不…

Color.Red

Color.Redは、赤色のColor構造体オブジェクトを返す。Color.Red プロパティ (System.Drawing) | Microsoft DocsForm.BackColorにこれをセットすると赤色になる。 LoadをダブルクリックでLoadをダブルクリックで、で、こう書く。 赤くなった赤くなった。Sampl…

Form.BackColor

Form.BackColorでFormの背景色をセットする。Form.BackColor プロパティ (System.Windows.Forms) | Microsoft Docs最初のBackColorは、 こうなっているこうなっている。 このまま実行したら、 このControl色このControl色。 あらかじめ決められた色でも選べ…

Size

Sizeは、幅と高さをセットする時に使う。Size 構造体 (System.Drawing) | Microsoft DocsForm.Sizeは、 300, 300の状態300, 300の状態。 Loadのイベントハンドラを定義Loadのイベントハンドラを定義。Size構造体sizeのWidthとHeightにそれぞれ150をセットし…

Form.Size

ウィンドウのサイズは、Form.Sizeで指定する。Form.Size プロパティ (System.Windows.Forms) | Microsoft Docs StartPositionは、Locationだから、Sizeとは関係ないか。StartPositionは、Locationだから、Sizeとは関係ないか。 最初は300, 300になってるので…

Point

Pointは、2次元座標の位置をセットする時に使う。Point 構造体 (System.Drawing) | Microsoft Docs ManualにしておくManualにしておく。 左上ぴったり左上ぴったり。 Load時にLocationをセットしてみるLoad時にLocationをセットしてみる。Point構造体pointの…

FormStartPosition.Manual

FormStartPosition.Manualで、ウィンドウの表示位置をForm.Locationの位置にできる。FormStartPosition 列挙型 (System.Windows.Forms) | Microsoft Docs最初は、 こうなっているのでこうなっているので、 Locationが0, 0でも、Locationが0, 0でも、 左上に…

Form.Location

ウィンドウの細かい位置は、Form.Locationで指定する。Form.Location プロパティ (System.Windows.Forms) | Microsoft Docsまず、 StartPositionをWindowsDefaultLocationにするStartPositionをWindowsDefaultLocationにする。 毎回違うけど、大体この辺に来…

FormStartPosition.CenterScreen

手動で、コード上で、ウィンドウを画面中央にするには、FormStartPosition.CenterScreenを指定する。FormStartPosition 列挙型 (System.Windows.Forms) | Microsoft Docs最初に、 この状態だとOSの既定値になるこの状態だとOSの既定値になる。 だいたいこう…

Form.StartPosition

WinFormsで、起動時のウィンドウ表示位置は、まずForm.StartPositionで決定される。Form.StartPosition プロパティ (System.Windows.Forms) | Microsoft Docs WindowsDefaultLocationに設定してある場合WindowsDefaultLocationに設定してある場合、 ここだっ…

Task.Delay

Task.Delayは、指定したミリ秒後に完了するタスクを作成する。Task.Delay メソッド (System.Threading.Tasks) | Microsoft Docs Task.Delay メソッドの謎作成するとしか書いてないが、実際は実行されてるはず(?)で、その実行をawaitすることで、Sleepみたい…

TaskCreationOptions.DenyChildAttach

TaskCreationOptions.AttachedToParentを内側のタスクに指定することで、タスクに親子関係を持たせることが出来た。 TaskFactory.StartNewの場合、 // 名前空間の登録 using System; // 共通データ型と基本クラス(System名前空間) using System.Threading; u…

Task.Run

.NET Framework 4.5では、Task.Runで非同期処理を実行できるようになった。Task.Run メソッド (System.Threading.Tasks) | Microsoft Docs C# 非同期、覚え書き。 - QiitaMainClass.csで、Task.RunにActionを指定するだけ。 外側も内側も別タスクで同時に実…

TaskCreationOptions.AttachedToParent

前回もやったが、TaskCreationOptions.AttachedToParentを指定すると、タスクが親子関係になり、子タスクが終わるまで待ってくれる。TaskCreationOptions Enum (System.Threading.Tasks) | Microsoft Docs子タスクの中に孫タスクを入れてみる。 最初に、Main…

TaskFactory.StartNew(action,creationOptions)

Taskは入れ子にする事も出来る。MainClass.csにて、 // 名前空間の登録 using System; // 共通データ型と基本クラス(System名前空間) using System.Threading; using System.Threading.Tasks; // マルチスレッド(System.Threading名前空間) // MainClassの定…

CancellationToken.ThrowIfCancellationRequested

CancellationToken.ThrowIfCancellationRequestedは、CancellationTokenSource.Cancelが実行されたら、OperationCanceledExceptionを投げる。CancellationToken.ThrowIfCancellationRequested メソッド (System.Threading) | Microsoft Docs 【C#】タスクの…

CancellationToken.IsCancellationRequested

前回も使ったけど、CancellationToken.IsCancellationRequestedでキャンセルがリクエストされたか判定する。CancellationToken.IsCancellationRequested プロパティ (System.Threading) | Microsoft Docs今回は、Windowsフォームアプリケーションでやってみ…

CancellationToken

キャンセルが要求された時の処理は、CancellationToken構造体のプロパティやメソッドを使いつつ、自前で処理を書かないといけない。CancellationToken 構造体 (System.Threading) | Microsoft DocsMainClass.csで、今回は、CancellationToken.IsCancellation…

CancellationTokenSource.Cancel

CancellationTokenSource.Cancelで、キャンセル要求をする。CancellationTokenSource.Cancel メソッド (System.Threading) | Microsoft Docs今度はWindowsフォームアプリケーションでやってみる。 配置はこう。button1をRun、button2をCancelとする。配置は…

TaskFactory.StartNew(action,cancellationToken)

TaskFactory.StartNewにactionに加えて、cancellationTokenを指定することで、キャンセルに対応できる。TaskFactory.StartNew メソッド (System.Threading.Tasks) | Microsoft Docs [雑記] スレッド プールとタスク - C# によるプログラミング入門 | ++C++; …

CancellationTokenSource.Token

続いて、CancellationTokenSource.Tokenで、CancellationTokenオブジェクトを取得する。CancellationTokenSource.Token プロパティ (System.Threading) | Microsoft DocsMainClass.csで、cts.Tokenを出力。 こうなるこうなる。Sample/dotnet/CancellationTok…

CancellationTokenSource

Taskをキャンセルできるようにする仕組みを作るには、CancellationTokenが必要。 まずは、CancellationTokenSourceを生成する。CancellationTokenSource クラス (System.Threading) | Microsoft DocsMainClass.csで、まずは、CancellationTokenSourceを生成…

Task.Wait

Task.Waitで、そのタスクが完了するまで待つ。Task.Wait メソッド (System.Threading.Tasks) | Microsoft DocsMainClass.csで、とすると、 t.Wait()で待ち状態に入った後、タスクの処理がすべて完了してから、"Finish after"が出力されてる。t.Wait()で待ち…

Task.Status

タスクの状態は、Task.Statusで確認することもできる。Task.Status プロパティ (System.Threading.Tasks) | Microsoft DocsMainClass.csで、前回と同様に3秒ごとに確認。 今回は、Task.Statusを出力するだけ。 途中Runningだったのが、最後RanToCompletionに…