c#

コンピュータ

C#でBitmapオブジェクトとbyte配列を変換する。

C#で画像処理をしていると画像をPixel単位で加工したい状況に遭遇します。いくつか方法はあるようですがC#でも比較的高速に動作するbyte配列に変換し加工する方法を試してみます。using System.Drawing.Imaging;n...
コンピュータ

VSCodeでC#ソースを引数付きでデバッグ実行する方法

Visual Studio Codeでデバッグ実行する場合、コマンドライン引数をとるようなプログラムのテスト方法を調べてみました。dotnet.exeでプロジェクトを作成し、vscodeでプロジェクトを開くとデバッグ実行用の設定ファイルが出...
コンピュータ

C#のWinFormsでNumericUpDownを試す。

NumericUpDownは数値を入力するコントロールで、数値を増減させるスピンボタンがついています。入力した数値はNumericUpDwon.Valueプロパティで参照可能でプロパティの型はdecimalです。定義例、NumericUpD...
スポンサーリンク
コンピュータ

C#のWinFormsでFlowLayoutPanelを試す

FlowLayoutPanelは子コントロールを自動的配置してくれるコントロールです。配置するコントロールはサイズのみ指定し、配置する座標はFlowLayoutPanelに任せることが出来ます。例、namespace FlowLayoutP...
コンピュータ

グレースケールで保存したPNGのPixelFormatは何になる?2「Format8bppIndexed」

PixelFormatにFormat8bppIndexedというフォーマットがありました。8bppですので8bitのグレースケールを扱うフォーマットだと思われますので試してみたいと思います。元画像(カラー)ソースコードnamespace R...
コンピュータ

C#のWinFormsでSystem.Drawing.Pointを確認する。

Point point = new();Debug.Print("X:{0}, Y:{1}, IsEmpty:{2}", point.X, point.Y, point.IsEmpty);// X:0, Y:0, IsEmpty:True引...
コンピュータ

C#のWinFormsでSystem.Drawing.Recangleを確認する

Recangleは矩形座標を配置する情報をプロパティに持ちます。Rectangle rect1 = new();Debug.Print("{0}", rect1);// {X=0,Y=0,Width=0,Height=0}コンストラクタで引...
コンピュータ

C#でフリーハンドで線を引く2「ひとつ前に戻る機能をつける」

ペイントソフトなどにある「ひとつ前に戻る機能」がどの様なものか考え試作してみました。namespace FreeHand2;public class ImgObject : IDisposable{ public Bitmap Bitmap...
コンピュータ

C#のWinFormsでControlの配置について

WinFormsでコントロールの配置について学んだことをまとめてみます。配置されるタイミングについて自分はコンストラクタでControls.Add()で配置しますが、それ以外でも動的に生成配置することも可能です。FormのLoadイベント内...
コンピュータ

C#のWinFormsでHScrollBarのMaximum、LargeChangeとValueの関係について

HScrollBarのValueがスライドを前回に動かしても、Maximumの値になっていいないようなので確認してみました。サンプルソースusing System.Diagnostics;namespace HScrollBarSample...
コンピュータ

C#のWinFromsでAnchorプロパティを設定する。

Anchorプロパティを設定してみました。namespace ClientCoordinate;public partial class Form1 : Form{ public Form1() { InitializeComponent(...
コンピュータ

C#のWinFormsでMarginとPaddingを確認する。

PaddingやMarginプロパティはコントロールの余白の設定なのですが、実際設定するとどのような影響あるか確認してみます。デフォルト設定namespace ClientCoordinate;public partial class Fo...
コンピュータ

C#のWinFormsでUserControlでオリジナルのイベント処理を追加する。

UserControlを継承しカスタマイズすることでオリジナルのコントロールを作成することが出来ます。そのコントロールの用途に合わせた固有のイベントを作成することが出来れば、発生したイベントに連動した処理を実行することが出来ます。names...
コンピュータ

C#のWinFormsで右クリックでコンテキストメニューを表示する。

UserControl上で右クリックでコンテキストメニューを表示するサンプルになります。サンプルプログラムソースnamespace ContextMenuSample;public partial class Form1 : Form{ p...