WinFormsでシンプルなアプリケーションランチャーを作成しました。プロジェクトの作成mkdir ApplicationLauncher01cd ApplicationLauncher01dotnet new winformsソースコード...
WinFormsで作るシンプルなアプリケーションランチャー【.NET 9 / C#】
WinFormsでシンプルなアプリケーションランチャーを作成しました。プロジェクトの作成mkdir ApplicationLauncher01cd ApplicationLauncher01dotnet new winformsソースコード...
名前とファイルパスのコレクションを管理するサンプル プロジェクトの作成mkdir jsonsaveloadcd jsonsaveloadgo mod init example.com/jsonsaveloadソースコードファイル名:json...
文字入力ダイアログボックスのサンプルです。プロジェクトの作成mkdir dialogmemocd dialogmemoMake-GoWalk.ps1Make-GoWalk.ps1は次の記事を参照ソースコードファイル名:dialogmemo....
ウィンドウにファイルをドラックアンドロップするサンプルコードです。プロジェクトの作成mkdir dragdropdemocd dragdropdemoMake-GoWalk.ps1Make-GoWalk.ps1は次の記事を参照ソースコードフ...
PCを快適にするアップグレードパーツを一つ選ぶとしたら?【2025年版】
はじめに2025年現在、PCのパーツ選びにおいて「どれを交換すると快適になるのか?」は多くの人が一度は考えるテーマです。CPUやGPUのような高価なパーツもありますが、今回はあえて体感の快適性に直結するパーツとして、「SSD」、とくにNVM...
PowerShell ワンライナー集:便利なパイプライン活用例まとめ
PowerShellのパイプラインはコマンドレット間でオブジェクトを渡す仕組みで、各オブジェクトで処理を組み合わせることで、複雑な処理流れを1行で表現することが出来ます。エクスプローラなどでファイルを操作する場合など、手作業で行うことに比べ...
ウィンドウにボタンをレイアウトし、ボタンを押すことでボタンの文字が変化するサンプルプログラムを作成しました。ソースコードファイル名:datasource.h#ifndef DATASOURCE_H#define DATASOURCE_H#i...
書籍「MSX-BASICでゲームを作ろう」を電子書籍で購入しました。書籍は後でじっくり読むとして、MSX公式エミュレーターMSXPlayerのダウンロード用のリンクとパスワードがあるので試してみました。起動時MSXのタイトル、RAMは豪華に...
C++のスマートポインタの型推論付き初期化 とQPointer
C++のスマートポインタを学習したのですが、モダンな初期化方法があるとのことですので、試したいと思います。また、Qt6でGUIプログラミングを学習する予定あり、Qtにもスマートポインタがあり、其の中でQPointerを学習したいと思います。...
C++のスマートポインタの型推論付き初期化 とQPointer
C++のスマートポインタを学習したのですが、モダンな初期化方法があるとのことですので、試したいと思います。また、Qt6でGUIプログラミングを学習する予定あり、Qtにもスマートポインタがあり、其の中でQPointerを学習したいと思います。...
XAMLを使わないWPF入門05「ListViewとコレクションをバインドする方法」
XAMLを使わないWPFでListViewとコレクションのバインディングを試して見ます。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAML05cd NoXAML05rm *.xamlrm ...
全てのコントーロルがコマンドを持つわけではないので、イベントからコマンドに変換してとバインドする方法を試してみます。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAML04cd NoXAML...
全てのコントーロルがコマンドを持つわけではないので、イベントからコマンドに変換してとバインドする方法を試してみます。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAML04cd NoXAML...
XAMLを使わないWPF入門03「ICommandによるコマンドバインディング」
XAMLを使わないWPFでプロパティとのバインドを前回試しました。今回はICommandのオブジェクトとのバインドを試してみたいと思います。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAM...
XAMLを使わないWPF入門02「ICommandによるコマンドバインディング」
XAMLを使わないWPFでプロパティとのバインドを前回試しました。今回はICommandのオブジェクトとのバインドを試してみたいと思います。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAM...
XAMLを使わないWPF入門02「ビューモデルのプロパティとバインド」
XAMLを使わない状態でデータバインディングはどのようにするか調べてみました。サンプルコードプロジェクトの作成dotnet new wpf -f net8.0 -n NoXAML02cd NoXAML02rm *.xamlrm MainWi...
VSCodeとdotnet.exeでWPFの開発をしていると、ビューであるXAMLはXMLファイルを直接編集することになります。ビューが独立したファイルになっている点は良いのでが、コントロールを多数レイアウトしていくと、ネストが深くなりすぎ...
WPFでコンテキストメニューの項目を動的に生成する方法を試して見ました。コンテキストメニューは親コントロールがあるわけでは無いので、DataContextを直接指定する必要があるとのこと。メニューのヘッダーは表示するのにコマンドが実行されな...
C#レコードクラスで作るファイルパス管理のサンプルコード3「メソッドチェーン」
LINQのように.でメソッドをつなげるスタイルを試してみました。ソースコードファイル名:FileSystemPath.cspublic sealed record class FileSystemPath{ public string Pa...
ファイルやフォルダに紐づくコメントを入力し記録する機能を実装しました。保存する先はSQLiteでテーブルを作成しました。以下のコードはテーブルの項目の定義になります。ファイル名:CommentTable.csnamespace FileMa...
レコードクラスでファイルパス管理クラスFielSystemPathのサンプルコードを書きました。更に機能を追加しようと思い、ファイルの有無などファイルシステムに依存するコードを別クラスFileSystemPathExにまとめました。また、F...
C#のレコードクラスを試してみました。サンプルコードファイル名:FileSystemPath.cspublic record class FileSystemPath{ public string Path { get; } private...
アプリケーション内で重複しない番号を生成するクラスを作ってみました。public class IdGenerator{ private int _currentId = 0; private readonly object _lock = ...
形が見え始めたファイルマネージャですが、毎回ここまでは辿りつくのですが、この後が中々難しい。前回の記事WPFの画像オブジェクトを扱うために、wpflibでプロジェクトを追加して、WPFAppプロジェクトから画像加工ルーチンを移動させました。...
WPFを使ったファイルマネージャを作成中です。何年も前から、挑戦し何度も挫折しています。今回も挫折するかもしれないので、せめて進捗だけでも残そうと記事を書きました。ファイルマネージャを作る目的は、ファイルやフォルダが増えてくると、ファイル名...
通常、HDMIをマザーボードのHDMIポートに接続することはおすすめされません。理由は、内蔵GPU(iGPU)が優先され、グラフィックボードの性能が無視されるからです。ゲームや動画編集など、GPU性能を活かす用途では、グラボ側のHDMIポー...
C#のConsoleでEntityFramework「fluent APIで1対多のリレーションシップ」
EntityFrameworkで1対多のリレーションシップを定義してみます。ソースコードusing Microsoft.EntityFrameworkCore;using System.Dynamic;using System.IO.Com...
C#のコンソールで入力した文字を表示する「順次処理キューによる非同期処理」
コンソールで入力した文字をそのまま出力します。Endと入力すると終了します。文字入力をメインスレッドで、文字出力をサブスレッドで実行しています。スレッド間で文字列をキューを介して送受信しています。using System;using Sys...
コンソールで入力した文字をそのまま出力します。Endと入力すると終了します。namespace console01;class Program{ static void Main() { while(true) { Console.Writ...
C#のConsoleでEntityFramework「fluent APIで主キーを定義」
覚えるのが面倒なのでfluent APIを避けてきましたが、エンティティクラスがPOCOなクラスだと何かと都合が良いことに気が付きましたので、fluent APIを試してみたいと思います。サンプルプログラムusing Microsoft.E...
DreamBoothを試すべくkohya_ssのリポジトリを導入してみましたが…
当サイトは、筆者が行った行動を、後日参考にするためのノートですので、基本的に成功事例を掲載するようにしています。ただ、失敗続きだと、記事の投稿頻度が減る傾向があり、見返した際、何も行っていない時期があるように見えるので、失敗談も記事にしたい...
以前WSL2とUbuntu環境でStyle-Bert-VITS2音声学習を試しモデルが作成出来ることは確認しています。それで、面白くて色々試していたところうっかり学習用データとモデルデータで、Cドライブをパンクさせてしまいました。今回は専用...
インターフェイスはメソッド及びプロパティを定義し、クラスで実装して使う機能です。インターフェイスは自体でインスタンスを生成することは出来ませんが、インターフェイスを実装したクラスのオブジェクトを受け入れる変数を定義することが出来ます。機能的...
C#で要素数が最大1個のコレクション「OnlyOneCollection」を作りNull許容型変数を置き換えてみる。
IEnumerableの実装に挑戦してみたいと思います。こちらのクラスはOnlyOneCollectionとコレクションを銘打ってはいますが、実際は要素数が0または1つのみ格納できるコンテナクラスとなっております。使い道としてはNull許容...
WPFアプリケーションの初期化処理でアプリケーションでSQLiteを使うとして、データベースファイルを設定ファイルから読み込むようにしたい。データベースファイルのパスは基本的に変更されることは無いので定数(const)で定義したいところです...
基本的KVMコマンドの使い方【Ubuntu24.04,GPUパススルー,RTX3060】
幾度かの失敗を経て、KVMでホストOSをUbuntu24.04、ゲストOSをUbuntu22.04でGPUをパススルーでRTX3060のドライバーをインストールするところまでこぎ着けました。今後KVMのコマンドを使うことが増えそうなので記事...
dotnet.exeでC#の単体テスト(MSTest)プロジェクトの作り方
個人でプログラミングを楽しむ分にはどのような方法で開発しても構わないと思いますが、すこし規模が大きくなると、クラス単位に機能や役割を分割することになり、それらを単体テストする必要性を感じることがあります。今回は、テストプロジェクトの作成~単...
C#でファイル一覧を取得してデータベースのテーブルから情報を取得する。
指定のディレクトリのファイルの一覧を取得し、ファイルのパスをキーとしてデータベースのテーブルからコメント項目の文字列を取得するコードに成ります。// ファイル・ディレクトリの一覧を取得する。using System.IO;using Mic...
肥大化しがちなWPFのXAMLとViewModelをユーザーコントロールを使って分割する方法
WPFでシングルウィンドウアプリケーション(一つのウィンドウだけで完結するアプリ)を作っていると、Viewにコントロールを沢山配置することになり、Viewを構成するXAMLファイルと、データソースとして紐づくViewModelのソースファイ...
1つしか存在しないものや、複数あると都合の悪いものを、インスタンス化する仕組み。・基本的に一つしか存在しないもの:システムの設定情報ロギングサービスプリンタスプーラー・複数存在すると都合の悪いもの:データベース接続プールキャッシュマネージャ...
C#ではList<T>などIEnumerable<T>インターフェースを実装したコレクションと、それをループ処理するforeachがあるので、Iteratorパターンを実装する機会は少ないと思われます。サンプルコードusing System...
MVVMで使うICommandというインターフェイスがあり、これを実装することでViewからViewModelのCommandを呼び出すことが出来ます。ウィキペディアの「Commandパターン」のページサンプルコードusing System...
オブジェクトの構築プロセスを段階的に行い、複雑なオブジェクトを柔軟に生成するためのデザインパターンです。ウィキペディアの「Builderパターン」のページサンプルコード/// <summary>/// BUilderパターンのサンプルコード...
Adapterパターンを使うと、既存のクラスを直接加工することなく、新たなインターフェイスを作ることが出来る。ウィキペディアの「Adapterパターン」のページサンプルコード/// <summary>/// Adapterパターンのサンプル...
Bridgeパターンを使うと、複数の要素の組み合わせの数分クラスを生成する必要があるケースで、要素をクラス化することで少ないクラス数で組み合わせを表現出来るように出来る。ウィキペディアの「Bridgeパターン」のページサンプルコード/// ...
オブジェクトを動的に装飾するパターンウィキペディアの「Decoratorパターン」のページサンプルコード/// <summary>/// Decoratorパターンのサンプルコード/// </summary>interface IProdu...
オブジェクトへのアクセスを制御し、必要に応じて追加の処理を提供する中間オブジェクトを用いるパターンとのこと。現実のProxyサーバーはHTTPリクエストを中継し代わりにアクセスすることで、本来アクセスできないネットワークからのWebブラウジ...
オブジェクトの状態を外部に公開せずに保存し、後でその状態に復元するためのパターンみたいです。ウィキペディアの「Mementoパターン」のページサンプルコードusing System.ComponentModel;using System.D...
オブジェクトの内部状態に応じて振る舞いを変更し、状態遷移をクラスとして表現するパターンです。ウィキペディアの「Stateパターン」のページサンプルコード/// <summary>/// Stateパターンのサンプルコード/// </summ...
Strategyパターンは処理のアルゴリズムをカプセル化し、実行時に切り替えることを目的としたパターンです。ウィキペディアの「Strategyパターン」のページサンプルコード/// <summary>/// Strategyパターンのサンプ...
C#でデザインパターン「TemplateMethodパターン」
クラスが提供する機能(TemplateMethod)を実現するため、その実装の一部をサブクラスに任せることで、コードの柔軟性と再利用性を高めるパターンウィキペディアのTemplateMethodパターンのページサンプルコード/// <sum...
C#でデザインパターン「TemplateMethodパターン」
クラスが提供する機能(TemplateMethod)を実現するため、その実装の一部をサブクラスに任せることで、コードの柔軟性と再利用性を高めるパターンウィキペディアのTemplateMethodパターンのページサンプルコード/// <sum...
Visitorパターンは、既存のクラスの構造を変更することなく、それらのクラスに対する新しい操作(メソッド)を外部から追加することを目的としたデザインパターンみたいです。Wikipediaの「Visitorパターン」サンプルコード/// <...
Compositeパターンと言ったらファイルシステムでしょう。ということでサンプルコードを作成してみました。using System.ComponentModel;using System.Runtime.CompilerServices;...
メインPCのHDDからSSDへの置き換えが完了して大分時間が経過しました。ファイルのバックアップ用に3.5インチHDDを接続していたのですが、そちらを動画作成用のプロジェクトフォルダとして使ってみました。極端に遅くなってしまい、SSDの速度...
C#でデザインパターン「AbstractFactoryパターン」
GUIのアプリケーションを作成する場合、ButtonやLabelなどのコントロールを配置すると思いますが、OSなどプラットフォームごとに生成するオブジェクトが異なる場合でも、生成する過程を抽象化することで同じ生成コードが適用できるようにする...
C#ででデザインパターン「FactoryMethodパターン」
オブジェクトの生成工程と生成するクラスを分離したパターン。クラスを差し替えたりすることで、開発と本番環境の切り替えなどがスムーズに出来るようです。サンプルコード/// <summary>/// FactoryMethodパターンのサンプルコ...
複数のオブジェクトのメソッドを決まった手順で実行する処理がある場合、Facadeオブジェクトで手順を実行するメソッドとすることで、シンプルなインターフェイスを提供する目的。プログラミングで関数(メソッド)やサブルーチンを作る目的と同じ感じで...
オブジェクト同士で通信する場合、Mediatorというオブジェクトを介して通信を行うパターン。/// <summary>/// Mediatorパターンのサンプルコード/// </summary>class MyMediator{ Dict...
文章を作成する際、過去に似たいような文章を流用し、異なる部分だけを修正することがあります。これをオブジェクト指向プログラミングを表現するのが「Prototypeパターン」のようです。生成済みのオブジェクトをコピーし、新しいオブジェクトを作る...
Flyweightパターンは、オブジェクトに共通の属性がある場合、その属性のオブジェクトを一つ作りそれを参照すると、一か所に集約されるため、一か所を編集するだけで参照している全てのオブジェクトに反映されます。また、参照ですのでメモリの節約に...
昔どこかで見た線を引くサンプルプログラムをJavaScriptで再現してみます。こんな感じだったような気もしますが、中心部分の空白が無かったような気もします。ソースコード<!DOCTYPE html><html lang="ja"> <he...
Explorerで開いているフォルダをPowerShellのカレントディレクトリにする方法
ExplorerからPowerShellで作業を切り替える場合、Explorerのアドレスバーから現在開いているフォルダのパスをコピーし以下のコマンドをPowerShellで実行するとカレントディレクトリを移動します。Explorer → ...
PowerShellで直近更新したファイルがあるフォルダをエクスプローラーで開く
前日の作業を続ける場合、エクスプローラーで作業していたフォルダを開くことが多いのですが、ファイルを保存した場所を忘れてしまいがちです。以下のPowerShellコマンドを実行するとF:ドライブ下のファイルを検索し更新費日時の若い5のファイル...
C#でデザインパターン「Interpreterパターン」iniファイルから連想配列へ
昔のWindows系OSで設定用のファイルとしてiniファイルがありました。Key1=Value1Key2=Value2AnotherKey=AnotherValueこちらの書式を連想配列に変換してみ...
WPFのListViewでListViewItemを編集する方法をさがす
エクスプローラーF2キーでのファイル名が編集が出来るますが、ListViewで同じことができないか試行錯誤しています。プロジェクトの作成ソースコードファイル名:BooleanToVisibilityConverter.csusing Sys...
C#のWPFでEntity Frameworkを使いSQLiteのDBをCRUD処理するサンプルコード
DBのテーブルを編集するGUIフォームを作成するにあたり必要な情報を集めてコード化してみました。さらにコード量が多くなりそうなので一旦記事にしてみました。プロジェクトの作成dotnet new wpf -n プロジェクト名cd プロジェクト...
ペイントソフトのKritaでPythonスクリプトが実行出来るようなので試してみます。スクリプター(Pythonエディタ&実行)・Kritaを起動&画像を用意・メニューの「ツール」→「スクリプト」→「スクリプター」・文字を出力する以下のスク...
C#のリフレクションを使って異なるクラスのオブジェクトの同名プロパティの値をコピーしてみる。
異なるオブジェクトで同名プロパティの値をコピーすることがあり、プリミティブな形なのでリフレクションで上手いこと処理できないかと思いコードを書いて見ました。class MyClassA{ public string Name { get; s...
C#のオブジェクトで定義されているプロパティの一覧を取得する。
クラスのオブジェクトからプロパティ名を取得してみます。サンプルプログラムclass MyClassA{ public string Name { get; set; } = ""; public int Value {get; set; }...
C#のプロジェクトディレクトリのサブディレクトリは自由に作成出来る。
プロジェクトディレクトリにソースファイルが複数保存されることになりますが、そのファイルをサブディレクトリで分類することができます。基本的にエクスプローラーでサブディレクトリを作成し移動するだけで良いみたいです。ただ、WPFのMainWind...
ReactiveCollectionのClearOnSchedulerでTaskCompletionSourceを使いクリア完了を待つコード
WPFのリストビューなどのデータソースとしてReactiveCollectionを使うのですが、一度内容をクリアして再表示するような場合、クリアの終了を待つ必要があります。普通の配列やコレクションであれば、コレクションの要素数をCount(...
TeraPadとサクラエディタは単語移動のショートカットキーが日本語対応している
細かな機能ではありますが、テキスト入力でCtrl+→で次の単語の先頭へ移動する機能があります。同様にマウスのダブルクリックで単語選択が出来たりします。メモ帳など簡易のテキストエディタやブラウザのテキスト入力項目でも、同じショートカットキーが...
WPFでドラックアンドドロップをビヘイビア化しソースコードを再利用する。
WPFでアプリケーションを作成していると、エクスプローラーからファイルをドラックアンドドロップで開くコードをよく書きます。そのたびに当ブログ記事を検索して、必要なコードをコピー&ペーストしています。それでも良いのですが、ビヘイビアとして作成...
PowerShellでファイルの一覧をリストボックスで表示しGUIアプリへドラックアンドドロップするスクリプト
PowerShellでファイルを検索しGUIアプリで開けると便利かと思いスクリプトを作成してみました。はじめC#のWinFormsで作成してみましたが、標準入力(パイプライン)の部分が動作させることが出来ませんでした。PowerShellで...
Observerパターンはオブジェクトの変化を通知する仕組みとのこと。C#ではObserverパターン用にIObservable<T>とIObserver<T>というインターフェイスが用意されているので、これを使ったサンプルコードをGemi...
ゆっくりムービーメーカー4のプロジェクトを別PCで使える方法を考える。 – 20250408
ゆっくりムービーメーカー4の動画素材は絶対アドレスで記録されており、別PCにプロジェクトファイルを移動するとフォルダ構成が異なる為、素材ファイルが読み込むことが出来なくなります。その場合、リンク切れを起こした素材ファイルを再度割り当てするこ...
プログラミングを学習する方法としてプログラミング言語の書籍を購入し、それを教科書としてサンプルプログラムを実行したりしながら学習を進める方法があります。今の時代であれば書籍の代わりに配信されている動画で学習する方法もありますし、リモートで受...
基本的な文字列操作と正規表現について調べてたことを記事にしています。オブジェクトの文字列化オブジェクトに.ToString()メソッドが定義されている場合、呼び出すことで文字列化することが出来ます。Console.WriteLine(obj...
「VeraCrypt」はオープンソースのディスク暗号化ソフトウェアです。こちらのソフトを愛用しています。基本的にWindows環境で使用していますので暗号化されたストレージのイメージファイルを仮想ドライブとしてマウントして使っています。スト...
dotnet.exeでconsole,wpf,classlibを1つのソリューションで構築しvscodeでデバック実行する方法
コードを再利用することを考えるとクラスライブラリ(classlib)として作成するのが望ましい。dotnet.exeのでclasslibのプロジェクトは以下のコマンドで作成することが出来ます。クラスライブラリプロジェクトの作成コマンドdot...
PowerShellでpythonの「if __name__ == “__main__”:」のような直接と参照実行でコードを分ける
pythonでスクリプトで定義した関数を別のスクリプトで参照する場合、以下のようなコードを記述します。if __name__ == "__main__": // 直接実行の場合実行されるコードPowerShellで同じようなことが出来ないか...
イラストなどを描くことは無いですが、画像加工ツールとして他のペイントソフトには無い機能があるので、試したことを覚書として残しておきます。ベクターレイヤーベクター形式ですので線を拡大縮小、移動、回転、変形などしても歪みが少ない特性があります。...
PowerShellのPSCustomObjectの動作を確認する。
何気に使っていたPSCustomObjectの基本的な使い方を確認してみました。<#.SYNOPSISPSCustomObjectの操作を確認する。#># PSCustomObjectの生成$psco = @...
C#のWinFormsでReactivePropertyを使ってコントロールとデータバインディングしてみる。
「データバインディングというとWPFというイメージがありますがWinFormでも出来ますよ」という話バインドするオブジェクト(データソース)に成れるのは、INotifyPropertyChangedを継承しているクラスであることが条件。クラ...
WPFでボタンコントロールを配置しボタンを押すとメッセージボックスでメッセージを表示するサンプルプログラムです。プロジェクトの作成dotnet new wpf -n <プロジェクト名>cd <プロジェクト名>dotnet add packa...
PowerShellの-matchで正規表現を使い文字列を抽出する方法
以下のような感じで取り出せます。"対象文字列" -match "正規表現1(?<名前>正規表現2?)正規表現3"正規表現で抽出する部分は()内で?<名前>正規表現2?で名前を付けて$Matches.名前で取り出します。サンプル"BlackB...
エクスプローラーなどから画像ファイルをアプリへドラックアンドドロップで画像を表示。表示されている画像を別アプリへドラックアンドドロップすることが出来る。ちなみにエクスプローラーのフォルダへドラックアンドドロップするとファイルが移動する。(e...
C#のWinFormでクリップボードを使いCtr+Vで画像を貼り付けCtrl+Cで画像をコピー
GUIのアプリケーション間でデータの受け渡しをする場合、クリップボードを使いコピー&ペーストする方法があります。個人的に画像を扱うことが多いのでピクチャボックスへ画像の貼り付けと、同じくピクチャボックスの表示画像をコピーするサンプルプログラ...
Visual Studio 2022でcl.exeでc言語のソースコードをコンパイル出来るようにする。 – 20250325
Visual Studio 2022でVC関連を一通りインストールしましたが、cl.exeでc言語のソースをファイルをコンパイルするとstdio.hが無いと叱られました。原因としてPowerShell(pwsh.exe)で実行していたことが...
CSharpScriptとgo言語でHello World – 20250324
以前C#の単体のソースコードを実行できないか試行錯誤してみたことがあります。ただ、一時的にC#のコードを試したいだけであれば、CSharpのScriptという選択肢があることに気が付きました。CSharpScriptを使えるようにするには以...
WPFのListViewを文字検索で絞り込み2 – ListViewFilterBehavior
ListViewで文字フィルターをするビヘイビア版です。ソートのビヘイビアが出来たので、フィルターもビヘイビア化出来るだろうと試みました。ただ、フィルターの場合フィルター用の文字を入力するテキストボックスが必要で、それとリストビューをどのよ...
WPFのListViewでヘッダークリックでソート2 – ListViewSortBehavior
ListViewのヘッダークリックでソートするコードを確認しました。再利用する場合、コードビハインドだと中身を理解するのが大変なので、ListViewSortBehaviorを作ることで再利用しやすくしてみました。前回の記事ソースコードファ...
Windowsのファイルにコメントする方法を考える2 – 20250322
ファイルのコメントを保存するテキストファイルをnotepad.exeで開くスクリプトを作成しました。ソースコード<#.SYNOPSIS概要を保存するテキストファイルをノートパッドで開く.DESCRIPTION概要を保存するテキストファイルを...
C#のWinFormでアプリケーションアイコンを設定する方法
アイコンをリソースで埋め込むべきだと思いますが、dotnet.exeでリソースを扱う方法を知らないので、.exeファイルのアイコンを読み込むようにしてみました。まずプロジェクトファイル(.csproj)の<PropertyGroup>にアイ...
VSCodeスニペットなんとなく解説!明日から使える、私だけのコードひな型集
ひな型集と銘打っていますが今のところ一つだけ。スニペットの設定ファイル⇒ユーザー設定⇒スニペットの構成言語固有のスニペット例:JavasSriptのスニペットjavascript.jsonHTMLのスニペットhtml.jsonグローバルスニ...
C#のWinFormsで画像処理 – バケツ塗りつぶしを実装してみた
ペイントソフトなどによくある塗りつぶし機能をC#で作成してみました。使い方ペイントソフトから画像コピー当アプリでCtrl+Vで画像を貼り付けマウスをクリックするとクリックした座標から塗りつぶしが開始します。Ctrl+Cで画像がクリップボード...
Windows11でスクリーンショットを考える。「Win+PrtSc」
Windows10あたりから「PtrSc」(PrintScreen)キーで、スマートフォンの様にスクリーンショットが撮れるようになりました。手元にあるWindows11で「PtrSc」キーを押すと 「Snipping Tool」というスクリ...
Windows11でCドライブがパンクした話。原因と対策20250321
システムドライブのCドライブがパンクすると非常に厄介なことになるので、ユーザーデータなどの保存場所は極力他のでドライブで運用するよう心掛けていました。それなのにCドライブがパンクしてしまい、何がストレージを圧迫しているのか調査しました。世の...
Python標準ライブラリargparseでコマンドライン引数をパースしてみる
argparseをコマンドライン引数にオプション名をつけたり、必須項目やデフォルト値を扱うことが出来るようなので試してみます。import argparse# パーサーの作成parser = argparse.ArgumentParser(...
「ブログリーダー」を活用して、84さんをフォローしませんか?
WinFormsでシンプルなアプリケーションランチャーを作成しました。プロジェクトの作成mkdir ApplicationLauncher01cd ApplicationLauncher01dotnet new winformsソースコード...
名前とファイルパスのコレクションを管理するサンプル プロジェクトの作成mkdir jsonsaveloadcd jsonsaveloadgo mod init example.com/jsonsaveloadソースコードファイル名:json...
文字入力ダイアログボックスのサンプルです。プロジェクトの作成mkdir dialogmemocd dialogmemoMake-GoWalk.ps1Make-GoWalk.ps1は次の記事を参照ソースコードファイル名:dialogmemo....
ウィンドウにファイルをドラックアンドロップするサンプルコードです。プロジェクトの作成mkdir dragdropdemocd dragdropdemoMake-GoWalk.ps1Make-GoWalk.ps1は次の記事を参照ソースコードフ...
はじめに2025年現在、PCのパーツ選びにおいて「どれを交換すると快適になるのか?」は多くの人が一度は考えるテーマです。CPUやGPUのような高価なパーツもありますが、今回はあえて体感の快適性に直結するパーツとして、「SSD」、とくにNVM...
PowerShellのパイプラインはコマンドレット間でオブジェクトを渡す仕組みで、各オブジェクトで処理を組み合わせることで、複雑な処理流れを1行で表現することが出来ます。エクスプローラなどでファイルを操作する場合など、手作業で行うことに比べ...
ウィンドウにボタンをレイアウトし、ボタンを押すことでボタンの文字が変化するサンプルプログラムを作成しました。ソースコードファイル名:datasource.h#ifndef DATASOURCE_H#define DATASOURCE_H#i...
書籍「MSX-BASICでゲームを作ろう」を電子書籍で購入しました。書籍は後でじっくり読むとして、MSX公式エミュレーターMSXPlayerのダウンロード用のリンクとパスワードがあるので試してみました。起動時MSXのタイトル、RAMは豪華に...
C++のスマートポインタを学習したのですが、モダンな初期化方法があるとのことですので、試したいと思います。また、Qt6でGUIプログラミングを学習する予定あり、Qtにもスマートポインタがあり、其の中でQPointerを学習したいと思います。...
C++のスマートポインタを学習したのですが、モダンな初期化方法があるとのことですので、試したいと思います。また、Qt6でGUIプログラミングを学習する予定あり、Qtにもスマートポインタがあり、其の中でQPointerを学習したいと思います。...
XAMLを使わないWPFでListViewとコレクションのバインディングを試して見ます。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAML05cd NoXAML05rm *.xamlrm ...
全てのコントーロルがコマンドを持つわけではないので、イベントからコマンドに変換してとバインドする方法を試してみます。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAML04cd NoXAML...
全てのコントーロルがコマンドを持つわけではないので、イベントからコマンドに変換してとバインドする方法を試してみます。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAML04cd NoXAML...
XAMLを使わないWPFでプロパティとのバインドを前回試しました。今回はICommandのオブジェクトとのバインドを試してみたいと思います。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAM...
XAMLを使わないWPFでプロパティとのバインドを前回試しました。今回はICommandのオブジェクトとのバインドを試してみたいと思います。サンプルコード・プロジェクトの作成dotnet new wpf -f net8.0 -n NoXAM...
XAMLを使わない状態でデータバインディングはどのようにするか調べてみました。サンプルコードプロジェクトの作成dotnet new wpf -f net8.0 -n NoXAML02cd NoXAML02rm *.xamlrm MainWi...
VSCodeとdotnet.exeでWPFの開発をしていると、ビューであるXAMLはXMLファイルを直接編集することになります。ビューが独立したファイルになっている点は良いのでが、コントロールを多数レイアウトしていくと、ネストが深くなりすぎ...
WPFでコンテキストメニューの項目を動的に生成する方法を試して見ました。コンテキストメニューは親コントロールがあるわけでは無いので、DataContextを直接指定する必要があるとのこと。メニューのヘッダーは表示するのにコマンドが実行されな...
LINQのように.でメソッドをつなげるスタイルを試してみました。ソースコードファイル名:FileSystemPath.cspublic sealed record class FileSystemPath{ public string Pa...
ファイルやフォルダに紐づくコメントを入力し記録する機能を実装しました。保存する先はSQLiteでテーブルを作成しました。以下のコードはテーブルの項目の定義になります。ファイル名:CommentTable.csnamespace FileMa...
住宅事情により、ワイヤレスヘッドフォン(ヘッドセット)を使っていましたが、バッテリーが持たなくなってきたので、ネックスピーカーを試してみました。 よくない点 少し重い。肩がこるほどでは無いので許容範囲。 たまに振動する。鎖骨のあたりがムズム
システムドライブ(C:)の空き容量が少なくなってきた場合、ストレージを増設しドキュメントフォルダなどの場所を移動させると、容量不足を解消することが出来ます。 手順 ドキュメントフォルダ上で右クリック⇒「プロパティ」⇒「場所」のタブ 「移動」
コマンドラインからGoogle翻訳を実行することが出来るようなので試してみました。 インストール sudo apt install translate-shell aptパッケージで楽々インストール 実行例 echo Jacket tr
IOPaintをインストールしたのでその作業ログを残しておきます。 IOPaintは画像の一部をいい感じに消去してくれるソフトでLama Cleanerの後継ソフトになります。 pythonの仮想環境を作成 cd ~/git mkdir i
IOPaintをインストールしたのでその作業ログを残しておきます。 IOPaintは画像の一部をいい感じに消去してくれるソフトでLama Cleanerの後継ソフトになります。 pythonの仮想環境を作成 cd ~/git mkdir i
ASP.NETが稼働しているサーバーの特定のディレクトリ下にあるファイルの一覧をJSON形式で返すサンプルプログラム。 プロジェクトの作成 mkdir AspMvcFileList cd AspMvcFileList dotnet new
ソースコード using System; using System.Windows.Forms; using System.Drawing; /* **************************************** リストビュ
monoは.NET Frameworkの互換ですのでDirectory.GetLogicalDrives()でドライブの一覧が取得できるはずです。 ただ、ドライブはWindowsの概念でUbuntuには存在しません。実行するとどのような結果
たまたまUbuntuのデスクトップ環境があるのでPowerShellをインストールしてみたいと思います。 サポート情報 インストールしようとしているUbuntu22.04はサポートされているようです。 Ubuntu 22.04 (Jammy
Ryzen7 5700XでWindows11なメインPCとRyzen5 7600でUbuntu22.04のサブPCで常設するデスクトップPCが2台となりました。 PCケースは手製のPCデスクの足元にミニタワーケースが2台設置出来るようにして
ディレクトリ:/usr/lib/mono/4.7.1-api/ Accessibility.dll Commons.Xml.Relaxng.dll CustomMarshalers.dll Facades I18N.CJK.dll I18N
ファイルアイコンをパスを使って描画してみます。 ソースコード ファイル名:Form1.cs using System.Drawing.Drawing2D; namespace FileIcon; public partial class F
フォルダーアイコンをパスを使って描画してみます。 ソースコード ファイル名:Form1.cs using System.Drawing.Drawing2D; namespace FolderIcon; public partial clas
Windows10には「Microsoft Print to PDF」という仮想プリンターが標準でインストールされています。 使い方は、アプリケーションの印刷機能で印刷先のプリンターに「Microsoft Print to PDF」を選ぶと
Ubuntu22.04のデスクトップを使っていてアプリケーションなどのソフトをソースコードからビルドした実行ファイルを起動することがあります。ターミナルから実行するスクリプトを組むようにしていますが、少し面倒なのでWindowsの様にデスク
注文した翌日パーツが届きました。 すぐに組んであげないとパーツの旬が過ぎてしまいますので、休日の早朝AM3:00から組み始めました。 既存のパソコンからケースと電源、グラフィックボード、M.2-SSDを流用しました。 比較的古い設計のマイク
ListViewでShiftキーやコントロールキーを使って複数アイテムを選択した状態を検出する方法調べてみました。 プロジェクトの作成 ソースコード ファイル名:FileEntity.cs public class FileEntity {
昨日、Ryzen5 7600を注文した記憶がうっすらあり、注文履歴をみてみたら以下の商品を注文しているようです。 AMD Ryzen 5 7600, Wraith Stealth Cooler ASRock マザーボード B650M PG
SHELL32.dll内にシステムアイコンが埋め込まれているので、そちらからアイコンを取り出して表示するサンプルになります。 プロジェクトの作成 mkdir SystemIconSample cd SystemIconSample dotn
ファイルサイズが以下のようなPNGファイルがあります。 Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 2024/05/01 9:53 463681 2