アプリケーションランチャーを使っていて登録したアプリケーションの数が増えるとスクロールするのが大変になってきました。対策として、Homeキーでで最初の行に移動する機能と、アプリケーションをダブルクリックするたびに1つ上の行に移動する機能を付...
文章を作成する際、過去に似たいような文章を流用し、異なる部分だけを修正することがあります。これをオブジェクト指向プログラミングを表現するのが「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...
「ブログリーダー」を活用して、84さんをフォローしませんか?
アプリケーションランチャーを使っていて登録したアプリケーションの数が増えるとスクロールするのが大変になってきました。対策として、Homeキーでで最初の行に移動する機能と、アプリケーションをダブルクリックするたびに1つ上の行に移動する機能を付...
LiteDBはSQLを書かずにC#のマネージドオブジェクトとして扱えるデータベースです。アプリケーションのバックエンドに良さそうなので試してみました。プロジェクトの作成mkidr LiteDBSamplecd LiteDBSampledot...
NMeCabを使うと日本語の文章を単語ごとに分割してくれるようなので試してみました。プロジェクトの作成 mkdir MeCabSample cd MeCabSample dotnet new console dotnet add packa...
mallocでメモリを確保する処理を確認したいと思います。ソースコード#include <stdio.h>#include <stdlib.h>int main() { int *arr; int size = 10; // メモリ確保 a...
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...
UbuntuでAnimeEffectsというソフトを使っていて、こちらのソフトは静止画から動画を作成するソフトなのですが、動画の書き出しで失敗しアプリケーションが強制終了することがありました。再現性があるので原因を調べてみることにしました。
住宅事情により、ワイヤレスヘッドフォン(ヘッドセット)を使っていましたが、バッテリーが持たなくなってきたので、ネックスピーカーを試してみました。 よくない点 少し重い。肩がこるほどでは無いので許容範囲。 たまに振動する。鎖骨のあたりがムズム
システムドライブ(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