Delphiサンプルソースコード集
このページでは、Delphiによる開発に役立つサンプルコードをカテゴリ別にまとめています。
VCL・FMX・Windows API・WebView2・PDF処理・画像描画・ネットワーク・ゲーム・データベース連携など、幅広い分野を網羅。
Windows・Android環境で動作確認済みの実装例も多数掲載しています。
目的別に探しやすく、実務でそのまま使えるコードが揃っています。
Windows
- 初心者向け
-
はじめに
Delphiってどんな言語?何かプログラムを作成してみる
-
基本構文等
変数の宣言、変数の基本型、変数への値の代入、条件文、ループ、構造体、クラス
-
イベントプロシージャにある引数Senderとは
イベントプロシージャにある引数Senderとは何かをサンプルソースコードで解説
-
実行時に動的にTButtonなどのコンポーネントを生成配置する
設計時ではなく実行時に動的にTButtonなどのコンポーネントを生成配置する方法をサンプルソースコードで解説
-
VCL
スロットマシンゲームを作る
IDE上でフォームにコンポーネントをドラッグ&ドロップし、プロパティを設定し「スロットマシンゲーム」Windowsアプリケーションを作成する
-
VCL
REST通信して郵便番号から住所を取得するアプリを作る
IDE上でフォームにコンポーネントをドラッグ&ドロップし、プロパティを設定し、ソースコードを入力して、REST通信して郵便番号から住所を取得するWindowsアプリケーションを作成する
-
VCL
ローディング アニメーションGIFファイルを作成するアプリを作る
IDE上でフォームにコンポーネントをドラッグ&ドロップし、プロパティを設定し、ソースコードを入力して、ローディングGIFアニメーションファイルを作成する本格的なアプリケーションを作成
- 基本
-
TStringListクラスの使い方
UTF8(BOM無)改行コード\r\nテキストファイルを保存する、テキストファイルの文字コード変換を行う、連想配列として使用する
-
TFileクラスを使ってファイルの作成日時、更新日時、アクセス日時、属性を取得、設定する
DelphiのTFileクラスを使ってファイルの作成日時、更新日時、アクセス日時、属性を取得、設定する
-
Delphiでリソースを使う ~ TResourceStream
リソースで外部ファイル(jpegファイル、xlsxファイル)をコンパイルした実行ファイルに含て使用する
-
配列(TArray)の並び替え(ソート)
配列(TArray)の並び替え(ソート)、比較クラスの指定
-
VCL,FMX
SHA2ハッシュ値、SHA1ハッシュ値、MD5ハッシュ値を生成する
DelphiのSystem.HashユニットのTHashSHA2、THashSHA1、THashMD5クラスでSHA2ハッシュ値、SHA1ハッシュ値、MD5ハッシュ値を生成する
-
VCL,FMX
正規表現を使う
System.RegularExpressionsユニットのTRegExで正規表現の処理を行う
-
VCL
Quoted-printableとBase64エンコード,デコードと文字コード変換
DelphiでQuoted-printableおよびBase64エンコード、デコードを行います。また文字コード「UTF-16LE(CP1200)、UTF-8、Shift-JIS、iso-2022-jp(JIS)、EUC-JP」も指定できるようにします。
-
VCL
文字列を式として評価して結果を返す(eval関数)
TBindingExpressionを使って文字列を式として評価して結果を返す(eval関数)
-
VCL
関数ポインタと手続きポインタ(ルーチンの参照)
関数と手続きを参照する関数ポインタ、手続きポインタ、関数のメソッドポインタ、手続きのメソッドポインタ、関数の参照型、手続きの参照型(ルーチンの参照)についてサンプルソースコードで解説
-
VCL
数字や文字や日付を整形する(FormatDateTime,FormatFloat,Format関数)
数字や文字や日付を整形するFormatDateTime,FormatFloat,Format関数の使い方をサンプルソースコードで解説
-
文字列型を数値型や日付時刻型に変換(StrToInt,StrToIntDef,StrToFloat,StrToDateTime関数)
文字列型を数値型や日付時刻型に変換する(StrToInt,StrToIntDef,StrToFloat,StrToDateTime,StrToDate,StrToTime関数)
-
日付時刻を扱う関数(Today,Now,EncodeDateTime,EndOfAMonth,DayOf)
Today,Now,EncodeDateTime,DateOf,TimeOf,EndOfAMonth,DayOf,MonthOf,YearOf,DayOfTheWeek,DecodeDateTime
- プリンタ
-
VCL
プリンタ一覧、用紙サイズ一覧、用紙情報の取得
プリンタ一覧、用紙サイズ一覧、用紙情報を取得する方法をサンプルソースコードで解説
-
VCL
プリンタに印刷
プリンタに印刷する方法をサンプルソースコードで解説
- 応用
-
VCL
Windowsのディスプレイ(モニター)設定の拡大率を取得する
-
VCL
指定モニターにアプリケーションウィンドウを移動させる
Delphiでモニターの数を取得し、その数だけ動的にボタンを作成し、ボタンを押すと指定モニターにアプリケーションウィンドウを移動させる
-
VCL
クラスのプライベートなメンバ変数を参照する
クラスのプライベートなメンバ変数を参照する方法(RTTI又はクラスヘルパーを使う)
-
VCL
TTaskクラスを使って並列プログラミング
TTaskクラスを使って並列プログラミングする方法を素数判定のサンプルソースコードで解説
- Windows APIなど
-
VCL
タッチキーボード(スクリーンキーボード,ソフトウェアキーボード)を作成
タッチキーボード(スクリーンキーボード,ソフトウェアキーボード)を作成する方法をサンプルソースコードで解説
-
VCL
リージョンでクリッピング領域を指定して画像をコピーしたり変形したウィンドウを作成
リージョンをクリッピング領域として設定し指定するポリゴン領域や楕円領域だけを画像の別画像にコピーする方法や、リージョンでウィンドウ領域を指定して楕円などの変形したウィンドウを作成する方法をサンプルソースコードで解説
-
VCL
Delphiで常駐アプリケーションを作成しタスクトレイアイコンをクリックしたらポップアップメニューをさせる
Delphiで常駐アプリケーションを作成しタスクトレイアイコンをクリックしたらポップアップメニューをさせます。また多重起動を防止させます。
-
文字列を半角全角カタカナひらがな大文字小文字変換
文字を半角全角カタカナひらがな大文字小文字変換する方法
-
VCL
フォームやパネルをマウスのドラッグで移動させる
-
VCL
OSにインストールされているコードページ一覧を列挙する
システム(OS)にインストールされているコードページ一覧を列挙する
-
VCL
Windowsの特殊フォルダのフルパスを取得
Windowsの特殊フォルダ(デスクトップやMyDocument等)のフルパスを取得する方法(SHGetSpecialFolderPath関数)
-
VCL
ShellExecute APIでエクスプローラーを開く
ShellExecute APIでディレクトリを指定してエクスプローラーを開いたり、指定したファイルが選択された状態でエクスプローラーを開く
-
VCL
[スタートアップ]フォルダにショートカット(.lnkファイル)を作成してログオン時に自動起動
Windowsの[スタートアップ]フォルダにショートカット(.lnk)ファイルを作成すると、 OSにログオン時にアプリケーションを自動起動させることができます。 Delphiで[スタートアップ]フォルダにアプリケーションのショートカットファイルを作成します。
-
VCL
StretchBlt APIを使ってハーフトーン設定で画像の縮小コピー
StretchBlt APIを使って画像を他の画像に縮小コピーする時にSetStretchBltModeでハーフトーン設定を行ってコピーする
-
VCL
SetWindowPosを使ったウィンドウ制御|Zオーダー・前面表示・SWPフラグ解説
Windows APIのSetWindowPosを使い、ウィンドウの位置・サイズ・Zオーダーを制御する方法を詳しく解説。前面表示(HWND_TOPMOST)、最背面配置(HWND_BOTTOM)、非アクティブ表示(SWP_NOACTIVATE)などの動作を、サンプルコードとともに紹介。SWP_ フラグの意味や使い分けも整理。
- コンポーネント
-
VCL
TGridPanelでカレンダー表示
TGridPanelでカレンダーを作成する方法をサンプルソースコードで解説
-
VCL
TProgressBarをTStatusBarの上に配置する
Delphi(VCL)でTProgressBarをTStatusBarの上に配置する方法
-
VCL
TTreeViewで階層リスト(ツリー)を表示しドラッグ&ドロップで移動
Delphi(VCL)でTTreeViewで階層リスト(ツリー)を表示しドラッグ&ドロップでノード移動する方法
-

VCL
時間のかかる処理の実行中を示す回転アニメーションTActivityIndicatorを使う
TActivityIndicatorとTThread.CreateAnonymousThreadを使う
-
VCL
DelphiでTTrayIconを使ってタスクトレイアイコンを表示させる
DelphiでTTrayIconを使ってタスクトレイアイコンを表示させる
-

FMX
DelphiでTTabControlを使う(FMX)
TTabControlを使うと、1つのフォーム(Androidだと1つのアクティビティ)で複数の画面設計を設定できるのでとても便利
-
FMX
DelphiでFMXのTPathを使ってSVG画像を表示する ~ FMX.Objects.TPath
TPathクラスを使うと簡単にSVG画像を表示できます
- TCanvas(ビットマップ描画)
-
VCL, FMX
Canvasを使ってBitmap画像に色を塗ったり線を引いたりテキストを出力(VCLおよびFMX)
DelphiのCanvasを使ってBitmap画像に色を塗ったり線を引いたりテキストを出力したりする
-
VCL, FMX
画像(TBitmap)を回転してCanvasに描画させる(VCLおよびFMX)
画像(TBitmap)を回転してCanvasに描画させる(VCLおよびFMX)方法をサンプルソースコードで解説
-
VCL
DelphiのCanvas.FloodFillでBitpmapを境界線まで塗りつぶす、指定色を塗りつぶす
DelphiのCanvas.FloodFillで、Bitpmapを指定した境界色までの領域を現在Brushで塗りつぶし、指定した色で塗りつぶされている領域を現在のBrushで塗りつぶし
-
VCL
文字の輪郭を描画する
StrokePath、StrokeAndFillPathで文字の輪郭を描画する
-
VCL
文字の輪郭のパス座標を取得する
文字の輪郭のパス座標(直線の座標とベジェ曲線の座標と制御点)の取得
-
VCL
デスクトップ画面全体のスクリーンショットを取得する
デスクトップ画面全体のスクリーンショット(画面全体のキャプチャ)を取得してTImage.Picture.Bitmapに保存する
- Direct2Dのキャンバス(TDirect2DCanvas)
-
VCL
Direct2Dのキャンバス(TDirect2DCanvas)を使ってTBitmapに描画を行う
Direct2Dのキャンバス(TDirect2DCanvas)を使うと不透明度が指定できき、アンチエイリアスを有効にして描画することが出来ます。またGPUを使うので高速です。
- GDI+
-
VCL
GDI+で描画
DelphiでGDI+を使って描画する方法をサンプルソースコードで解説
- GraphicEx
-
VCL
GraphicExでAdobe社Photoshopの.psdファイルを表示するアプリケーションを作成
GraphicExを使ってAdobe社Photoshopの「.psd」ファイルを表示するアプリケーションを作成する
- PDFium
-
VCL
PDFiumでPDFファイルを表示したりテキストを読んだり画像に変換する
PDFiumを使ってPDFファイルを表示したりテキストを読んだり画像に変換する方法をサンプルソースコードで解説
-
VCL
Delphi×PDFiumでPDFからWEBカタログ自動生成|画像変換対応
DelphiでPDFiumを使い、PDFファイルから画像変換を行いWEBデジタルカタログを自動生成する方法を解説。DLLとライブラリの導入、VCLフォームの構築、画像保存処理、HTML出力までサンプルコード付きで紹介
- プロセス
-
VCL
プロセス[メモ帳]を起動し、プロセスの起動を待ち、プロセスの終了を待つ
プロセス[メモ帳]を起動し(CreateProcess)、プロセスの起動を待ち(WaitForInputIdle)、プロセスの終了を待つ(WaitForSingleObject)
- Windowsシステム全体にホットキーを登録
-
VCL
Windowsシステム全体にRegisterHotkey関数でホットキーを登録(VCL)
Windowsシステム全体にRegisterHotkey関数でホットキーを登録し、アプリケーションがアクティブでない場合でもホットキーが押されたらWM_HOTKEYメッセージが届いてキーの入力を捕まえることができます
- エクスプローラーからファイルのドラッグ&ドロップ
-
VCL
エクスプローラーからファイルのドラッグ&ドロップ(VCL)
エクスプローラーからファイルをドラッグ&ドロップした時のファイル名を取得する
-
FMX
エクスプローラーからファイルのドラッグ&ドロップ(FMX)
エクスプローラーからファイルをドラッグ&ドロップした時のファイル名を取得する
- アプリケーションからエクスプローラーへのファイルのドラッグ&ドロップ
-
VCL
エクスプローラーやデスクトップにアプリケーションからファイルをドラッグ&ドロップする
エクスプローラーやデスクトップにアプリケーションからファイルをドラッグ&ドロップできるTPanelを継承したTOleDragPanelクラスを作成して使用する
- Webview4Delphi
-
VCL
Webview4DelphiでWebView2を使う
Delphi XE4以降で動作するらしいEdge版Webview(Delphi XE10.2Tokyo、XE10.4で動作する事を確認済み)
-
VCL
Webview4Delphi(WebView2)でブラウザの音声認識機能をDelphiから使用する
Webview4Delphi(WebView2)でブラウザの音声認識機能(SpeechRecognition)をDelphiから使用する
-
VCL
Webview4Delphi(WebView2)でブラウザの位置情報(GPS)機能をDelphiから使用する
webview4delphi(WebView2)でブラウザの位置情報(GPS)機能(SpeechRecognition)をDelphiから使用する
-
VCL
Webview4Delphi(WebView2)でブラウザのカメラ(WebCam)映像を取得する機能をDelphiから使用
webview4delphi(WebView2)でブラウザのカメラ(WebCam)映像を取得する機能をDelphiから使用する
-
VCL
Delphi × WebView4Delphiで笑顔度解析:face-api.js活用ガイド
DelphiでWebView4Delphiとface-api.jsを連携し、AIを用いて複数画像の笑顔度を解析する方法を詳しく解説。ソースコード付きで実装手順も網羅。
- TEdgeBrowser(Delphi XE10.4.2以降)
-
VCL
Delphi10.4.2(Community Edition)のTEdgeBrowserを使う
Delphi10.4.2(Community Edition)のTEdgeBrowserを使ってアプリ上でChromium Edgeブラウザを表示する
-
VCL
TEdgeBrowserでface-api.jsを使って写真から顔領域を取得する
Delphi10.4.2(Community Edition)のTEdgeBrowserでface-api.jsを使って、写真から顔領域を取得する
-
VCL
TEdgeBrowserでSetVirtualHostNameToFolderMappingを使ってローカルフォルダをWEBサイトのように扱う
Delphi10.4.2(Community Edition)のTEdgeBrowserでSetVirtualHostNameToFolderMapping関数を使ってローカルフォルダをWEBサイトのように扱う
-
VCL
TEdgeBrowser(WebView2)でブラウザの音声認識機能をDelphiから使用する
Delphi11.3(Community Edition)のTEdgeBrowser(WebView2)でブラウザの音声認識機能(SpeechRecognition)をDelphiから使用する方法をサンプルソースコードで解説
-
VCL
TEdgeBrowser(WebView2)でブラウザの位置情報(GPS)機能をDelphiから使用する
Delphi11.3(Community Edition)のTEdgeBrowser(WebView2)でブラウザの位置情報機能(GPS)をDelphiから使用して緯度経度を取得する方法をサンプルソースコードで解説
-
VCL
TEdgeBrowser(WebView2)でWebCam(カメラ)映像を取得する機能をDelphiから使用する
Delphi11.3(Community Edition)のTEdgeBrowser(WebView2)でブラウザのWebCam(カメラ)映像を取得する機能をDelphiから使用してカメラ映像を表示する方法をサンプルソースコードで解説
-
VCL
TEdgeBrowser(WebView2)でPDFファイルを表示する
Delphi11.3(Community Edition)のTEdgeBrowser(WebView2)でPDFファイルを表示します
-
VCL
TEdgeBrowser(WebView2)で基本認証(ベーシック認証)に応答する
Delphi12.1(Community Edition)のTEdgeBrowser(WebView2)で基本認証(ベーシック認証)に応答する方法をサンプルソースコードで解説
-
VCL
TEdgeBrowser(WebView2)でタブブラウザを作る
Delphi12.1(Community Edition)のTEdgeBrowser(WebView2)でタブブラウザを作るソースコード
-
VCL
Delphiで顔認証:TEdgeBrowser × face-api.jsによる人物照合システム
DelphiのTEdgeBrowserを使い、JavaScriptライブラリ「face-api.js」と連携して顔認証システムを構築。登録済みの正面顔写真と対象画像の特徴点を比較し、ユークリッド距離で同一人物かを判定。WebView2の制御、Base64画像の受け渡し、認証結果の取得まで、実践的なコードと罠への対処を詳細に解説。
- Windows コンソールアプリ
-
VCL
コンソール アプリ作成
Delphiでコンソールアプリケーションを作成する
-
VCL
コンソール アプリ作成
~ Shift-JISからUTF-8へテキストファイル変換するコマンドプロンプトアプリを作成する
-
VCL
コマンドプロンプトをGUIで操作するアプリケーションを作る
DelphiでコマンドプロンプトをGUIで操作するアプリケーションを作る
- JCL,JVCL
-
VCL
TJvStringGridを使ってカラムのソート(並び替え)を行う
DelphiでTJvStringGridを使ってグリッドのカラムのソート(並び替え)を行う
- Windows Webアプリ
-
VCL
WEBアプリケーションの作成(Stand Alone)
DelphiでスタンドアローンWebアプリケーションを作成する
-
VCL
WEBアプリケーションの作成(CGI形式 チャットアプリ)
DelphiでチャットWebアプリケーション(WindowsのApache用CGI)を作成する
MySQL(MariaDB)と連携 -
VCL
WEBアプリケーションの作成(CGI形式 ファイルアップロード)
DelphiでファイルアップロードWebアプリケーション(WindowsのApache用CGI)を作成する
-
VCL
WEBアプリケーションの作成(Webdavサーバーにアップロード、ダウンロード、ファイル一覧取得)
Delphiでwebdavサーバーに接続してファイルのアップロード、一覧の取得、ファイルのダウンロードを行う
- Windows サービスアプリ
-
VCL
サービスアプリケーションの作成
Delphiでサービスアプリケーションを作成し、サービスをWindowsに登録する
- Windows データベースアプリ
-
VCL
データベース アプリケーションの作成
Delphiで 1行もソースコードを記述せずにデータベース アプリケーションを作成する
-
VCL
MariaDB(MySQL)と接続するデータベース アプリケーションを作成する
FireDacを使ってMariaDB(MySQL)にLocalhost接続を行い、ソースコードを10行ほど記述してアプリケーションを作成する
-
VCL
TFDMemTableでApacheのログを解析する
TFDMemTableでApacheのログを解析する方法をサンプルソースコードで解説
-
VCL
SQLiteでApacheのログを解析する
DelphiとSQLiteでApacheのログを解析する方法をサンプルソースコードで解説
-
VCL
SQLiteで暗号化データベースを使用する
DelphiとSQLiteで暗号化されたデータベースを作成して使用する方法をサンプルソースコードで解説
-
VCL
DelphiとSQLiteで作る軽量タスク管理アプリ
DelphiとSQLiteを使って、シンプルかつ効率的なタスク管理アプリを構築する手順を解説。VCLコンポーネントの使い方やトリガー設定、DB設計まで紹介します。
ソースコードは1行も記述せずに構築します。 -
VCL
DelphiとMySQL/MariaDBで作る軽量タスク管理アプリ
DelphiとMySQL/MariaDBを使って、シンプルかつ効率的なタスク管理アプリを構築する手順を解説。VCLコンポーネントの使い方や、DB設計まで紹介します。
ソースコードは1行だけ記述します。 - ゲーム
-

FMX
シューティングゲーム
3Dシューティングゲームを作る
-

FMX
シューティングゲーム
2Dシューティングゲームを作る
-

FMX
野球ゲーム
3D野球ゲーム(バッティングゲーム)を作る
-
FMX, Windows, Android
ブロック崩し
ブロック崩しをプログラミングする(WindowsでもAndroidでも動く)
-
FMX, Windows, Android
リバーシ
リバーシをプログラミングする(WindowsでもAndroidでも動く)
-
FMX, Windows, Android
視覚トレーニング アプリを作る
視覚トレーニング アプリを作る(WindowsでもAndroidでも動く)
- ネットワーク
-
VCL, Windows API
Delphiでping送信
DelphiでIcmpSendEcho API関数でping送信する方法をサンプルソースコードで解説
-
VCL
REST通信してレスポンスのJSONをデコードする
TRESTClientでREST通信してレスポンスのJSONをTJsonSerializerやTJsonTextReaderやTJsonObjectを使ってデコードする方法をサンプルソースコードで解説
-

VCL
ネットワークカメラ映像をRTSPストリーミング再生
RTSPプロトコルに対応したネットワークカメラの映像を受信して再生するアプリケーションの作成
-
VCL
RTSPネットワークカメラのストリーミング映像をビットマップとして受信して再生
RTSPプロトコルに対応したネットワークカメラの映像をビットマップ(TBitmap)として受信して再生するアプリケーションの作成
-
libssh2_delphiを使ってSSHトンネル(SSHポートフォワーディング)
libssh2_delphiを使ってSSHトンネル(SSHポートフォワーディング)を行えるアプリケーションを作成する
-
TNetHTTPClientを使ってWebサーバーにGET、Postを行う
TNetHTTPClientを使うとGET・Postでパラメータを与えることも、カスタムヘッダーやCookieも扱える
-
TGPuttyLibを使ってSFTPクライアントを作る
DelphiでTGPuttyLibを使ってSFTP(SSH File Transfer Protocol)クライアントを作る
-
gmailのSMTPサーバーを経由してメールを送信する
DelphiでgmailのSMTPサーバーを経由してメールを送信する
-
Windows用sendmail.exeを作成してPHPからメール送信する
DelphiでWindows用sendmail.exeを作成してPHPからメール送信する
-
プロキシサーバーを作る
Delphiでプロキシサーバーを14行で作る
-
winsockでTcpClientを作る
Delphiでwinsockを使ってTcpClientを作る
- ZXing.Delphi(QRコードやCode39バーコードのスキャン)
-
VCL
ZXing.DelphiでQRコードやCode39バーコードを読む(VCL)
ZXing.DelphiでQRコードやCode39バーコード画像をスキャンして文字に変換する方法をサンプルソースコードで解説(VCL)
-
FMX
ZXing.DelphiでQRコードやCode39バーコードを読む(FMX)
ZXing.DelphiでQRコードやCode39バーコード画像をスキャンして文字に変換する方法をサンプルソースコードで解説(FMX)
-
VCL
ZXing.DelphiとDSPackでWEBカメラからバーコードやQRコードを読み取るQRコードリーダーを作る(VCL)
ZXing.DelphiとDSPackでWEBカメラからバーコードやQRコードを読み取るQRコードリーダーを作る方法をサンプルソースコードで解説(VCL)
- Windows WebCam(USB接続カメラ)DSPack
-
DSPackのインストール
DelphiにDirectShowが手軽に使えるDSPackをインストールする
-
DSPackで写真撮影アプリを作成する
DelphiでUSBカメラから写真を撮影するアプリを作成する
-
DSPackで動画撮影アプリを作成する
DelphiでUSBカメラから動画を撮影するアプリを作成する
- MfPack(Microsoft Media Foundation API)
-
MfPackのインストール
MfPackのインストール(Microsoft Media Foundation API)
-
画像ファイルから動画ファイルを作成
MfPackで画像ファイル(bmp,jpg,png)から動画ファイル(mp4,wmv,avi)を作成する
- ハードウェア
-
VCL
光センサーから照度(Lux)を読む
光センサー付きのパソコンから照度(単位:ルクス)を読みとる
-
VCL
PaSoRiとDelphiでNFCカード(NXP NTAG215)を読み書き
PaSoRi(RC-S380)とDelphiでNFCカード(NXP NTAG215)を読み書きするソースコード
-
VCL
PaSoRiとDelphiでNFCカード(NTAG215)のテキストとURLを読み書き
PaSoRi(RC-S380)とDelphiでNFCカード(NXP NTAG215)のテキストとURLを読み書きするクラスを作成して使用する方法
-
VCL
Delphiでマイクの音をほぼリアルタイムにスピーカーに流す
マイクの音をほぼリアルタイムにスピーカーに流す(waveInOpen、waveOutOpen API)
-
VCL
「ボイスチェンジャー」アプリケーションを作成(マイクからの音をピッチシフトしてスピーカーで鳴らす)
Delphiだけでマイクの音を高速フーリエ変換とピッチシフトと逆変換で「ボイスチェンジャー」するアプリケーションを作成する
-
VCL
マイクの音を録音して.wavファイルに保存する
Delphiでマイクの音を録音して.wavファイルに保存するするアプリケーションを作成する
-
VCL
DelphiでSATA接続のSSD,ハードディスクのSMART情報を取得する
S.M.A.R.T.(Self-Monitoring Analysis and Reporting Technology)
-
VCL
DelphiでNVMe接続のM.2 SSDのHealth Information(健康状態の情報)を取得する
NVMe接続のM.2 SSDのHealth Information(健康状態の情報)を取得して表示する
-
VCL
Wake On Lan(マジックパケット)で遠隔PCを起動
DelphiでWake On Lan(WOL)パケット(マジックパケット)を送信して遠隔でPCを起動する
-
VCL
入力した文字列を読み上げるWindows10アプリケーションを作る ~Windows10が話す
Delphiで入力したテキスト文字列をWindows10が喋る(Windowsに喋らせる)
-
VCL
現在のキーボード、マウス、ジョイスティックコントローラー(ゲームパッド)の情報を取得
キーボードの特定のキーが押されているか、マス座標、マウスボタンの状態、ジョイスティックの傾き、ボタンの状態を取得
-
VCL
指定周波数の音を鳴らす
指定周波数の音を鳴らす「Winapi.Windows.Beep(周波数[Hz],持続時間[(ms])」
-
VCL
MIDI音源の音を鳴らす(midiOutShortMsg)
DelphiでmidiOutOpen,midiOutShortMsg,midiOutCloseを使ってMIDI音源の音を鳴らす
- アルゴリズム、その他
-
高速フーリエ変換(FFT)
Delphiで高速フーリエ変換(FFT)を行う
-
Lomb-Scargle ピリオドグラム(Lomb-Scargle Periodogram)法
DelphiでLomb-Scargle ピリオドグラム(Lomb-Scargle Periodogram)法を使う
-
USBのHID(ヒューマン インターフェイス デバイス)からデータを取得する
HID(ヒューマン インターフェイス デバイス)からデータを取得する
-
メモリクリーナーの作成
Delphiでメモリクリーナーを作成する
-
コムソート(Comb Sort)のアルゴリズムを実装する
処理速度がそこそこ速く、ソースコードもお手軽で、メモリを消費しない、スタックも消費しないアルゴリズム
-
ヒープソート(Heap Sort)のアルゴリズムを実装する
処理速度はあまり速くないが、ソースコードもお手軽で、メモリを消費しない、スタックも消費しないアルゴリズム
-
UTF-8文字列のバイト配列(TBytes)型からUTF-16LE文字列のバイト配列型に変換
UTF-8文字列のバイト配列(TBytes)型からUTF-16LE文字列のバイト配列型に変換(DelphiのString型に変換可能)する関数を実装する
-
ボイヤー・ムーア法(BM法、Boyer-Moore)文字列検索アルゴリズム
ボイヤー・ムーア法文字列検索アルゴリズムで文字列から部分文字列を探索する
-
B-スプライン曲線(B-Spline Curve)で点を補完して曲線を描く
B-スプライン曲線(B-Spline Curve)で点を補完して曲線を描く
-
最小二乗法でy=ax+bの回帰直線を求める
最小二乗法でy=ax+bの回帰直線を求める
-
テキストファイル名を与えると文字コード判定する関数
ファイル名を与えると文字コード(UTF16LE,UTF16BE,UTF8,EUCJP,JIS,SJIS)を判定する関数のDelphi用ユニットのソースコード
- FMX 3D
-

FMX
TViewport3Dとジョイスティックでドローン操縦シミュレーション作成(FMX)
TViewport3Dとジョイスティック(ゲームパッド)でドローン操縦シミュレーションを作成するソースコード
-
FMX
FMXフレームワークでTViewport3Dを使って球の完全弾性反射を3D表示する
DelphiのFMXフレームワークでTViewport3Dを使って球の完全弾性反射を3D表示する
-

FMX
FMXフレームワークで3Dメッシュ(TMesh)を表示する
DelphiのFMXフレームワークのTViewport3Dに3Dメッシュ(TMesh)を表示する
-

FMX
FMXフレームワークで3Dメッシュ(TMesh)にテクスチャを設定してを表示する
DelphiのFMXフレームワークで3Dメッシュ(TMesh)にテクスチャを設定してを表示する
-

FMX
3Dメッシュ(TMesh)をキーボード操作に応答してアニメーション表示する
DelphiのFMXフレームワークのTViewport3Dに3Dメッシュ(TMesh)をキーボード操作に応答してアニメーション表示する
- 人工ニューラルネットワーク(Artificial Neural Network)
-
人工ニューラルネットワーク(Artificial Neural Network)
Delphiのみで人工ニューラルネットワーク(Artificial Neural Network)のソースコードをフルスクラッチでプログラミング
-
人工ニューラルネットワーク(Artificial Neural Network)で日経平均株価終値を予測する
日経平均株価終値の連続する7営業日の値から翌日、翌々日の終値を人工ニューラルネットワーク(Artificial Neural Network)を使ってDelphiで予測する
-
人工ニューラルネットワークでFashion-MNISTを学習させ画像生成AI
人工ニューラルネットワーク(Artificial Neural Network)でFashion-MNISTを学習させ画像生成AIを作成する
- 畳み込みニューラルネットワーク(Convolutional Neural Network)
-
MNIST用の畳み込みニューラルネットワーク(CNN)をフルスクラッチで作成
MNIST用の畳み込みニューラルネットワーク(Convolutional Neural Network)をDelphi言語のみでフルスクラッチで作成する
-
MNIST用の畳み込み層+全結合層ニューラルネットワーク(CNN)をフルスクラッチで作成
MNIST用の畳み込み層+全結合層ニューラルネットワーク(Convolutional Neural Network)をDelphi言語のみでフルスクラッチで作成する
- FANN(Fast Artificial Neural Network Library)
-
FANN(Fast Artificial Neural Network Library)を使う
DelphiでFANN(Fast Artificial Neural Network Library)人工ニューラルネットワークを使う
-
FANN(Fast Artificial Neural Network Library)を使って最高気温をAIに予測させる
DelphiでFANN(Fast Artificial Neural Network Library)を使って最高気温をAIに予測させる
-
FANNを使って手書き数字をAIに認識させる
DelphiでFANN(Fast Artificial Neural Network Library)を使って手書き数字(0~9)をAIに認識させる
-
FANNを使ってMNISTを利用してみる
DelphiでFANN(Fast Artificial Neural Network Library)を使って手書き数字(0~9)の画像データセットMNISTを利用してみる
-
2つの1桁の整数の足し算をFANN(Fast Artificial Neural Network Library)に行わせる
Delphiで2つの1桁の整数の足し算をFANN(Fast Artificial Neural Network Library)に行わせる
- Haar Cascade識別器(分類器)
-

VCL
画像から顔領域、目の領域を認識する(Haar Cascade)
DelphiでHaar Cascade識別器(分類器)を実装し、画像から顔領域や目の領域を認識検出します
-

VCL
OpenCVで機械学習したcascade.xmlファイルを使用して検出領域を表示する
OpenCVで機械学習にて生成したcascade.xmlファイルをDelphiで画像に使用して検出領域を表示する
- 画像処理
-
VCL
白黒画像の輪郭追跡を行いポリゴン座標を抽出
白黒画像の輪郭追跡を行いポリゴン座標を抽出する方法をサンプルソースコードで解説
-

VCL
TBitmap画像を任意の角度に回転したTBitmap画像を生成する
ビットマップ画像を任意の角度に回転した画像生成(ニアレストネイバー、またはバイキュービック)方法をサンプルソースコードで解説
-
VCL
画像からカラーヒストグラムを作成する
1ピクセルは8bit(0~255)×3(RGB)の24ビットで表現されますが、2Bit(0~3)×3(RGB)の6Bit(0~63)に変換し、そのピクセル値(0~63)の頻度(割合)をカラーヒストグラムと呼ぶそうです
-
VCL
TBitpmapから.jpg(TJpegImage)や.png(TPngImage)や.ico(TIcon)や.gif(TGIFImage)ファイルに変換する
jpegファイルの作成、透過型PNGファイルの作成、透過型ICONファイルの作成、透過型アニメーションGIFファイルを作成する
-
FMX
TBitpmapからJPEG,PNG,GIF,TIFFファイルを保存(FMX)
TBitpmapからJPEG(品質指定して.jpg保存),PNG,GIF,TIFFファイルを保存(FMX)
-
FMX
Delphi(FMX)のエフェクト(TxxxxxxEffect)クラス
Delphi(FMX)の様々なエフェクト(TxxxxxxEffect)クラスをImageに適用する
-
VCL
RGBをHSVに変換して指定した色相範囲を変換する(VCL)
Delphi(VCL)でRGBをHSVに変換して指定した色相範囲を変換する(VCL)
-
VCL
明るさ(Bright)コントラスト(Contrast)補正を写真画像に適用させる(VCL)
Delphi(VCL)で明るさ(Bright)コントラスト(Contrast)補正を写真画像に適用させる(VCL)
-
FMX
明るさ(Bright)コントラスト(Contrast)補正を写真画像に適用させる(FMX)
Delphi(FMX)で明るさ(Bright)コントラスト(Contrast)補正を写真画像に適用させる(VCL)
-
VCL
アンシャープマスク(鮮鋭化)ガウシアンぼかし(ノイズ除去ぼかし)ぼかし(平滑化、平均化)メディアンフィルタ(スパイク[ゴマ塩]ノイズ除去)グレースケール変換(VCL)
画像(TBitmap)にアンシャープマスク(鮮鋭化)、ガウシアンぼかし(ノイズ除去ぼかし)、ぼかし(平滑化、平均化)、メディアンフィルタ(スパイク[ゴマ塩]ノイズ除去)、グレースケール変換、フィルターを適用する(FMX)
-
FMX
アンシャープマスク(鮮鋭化)ガウシアンぼかし(ノイズ除去ぼかし)ぼかし(平滑化、平均化)メディアンフィルタ(スパイク[ゴマ塩]ノイズ除去)グレースケール変換(FMX)
画像(TBitmap)にアンシャープマスク(鮮鋭化)、ガウシアンぼかし(ノイズ除去ぼかし)、ぼかし(平滑化、平均化)、メディアンフィルタ(スパイク[ゴマ塩]ノイズ除去)、グレースケール変換、フィルターを適用する(FMX)
-
VCL
バイキュービック法で写真画像を拡大縮小する(VCL)
バイキュービック法(bicubic)を使って写真画像を拡大縮小する
-
FMX
バイキュービック法で写真画像を拡大縮小する(FMX)
バイキュービック法(bicubic)を使って写真画像を拡大縮小する
-
VCL
バイラテラルフィルタを写真画像に適用させる(VCL)
バイラテラルフィルタ(bilateral filter)を写真画像に適用させて果物を美肌に加工する
-
FMX
バイラテラルフィルタを写真画像に適用させる(FMX)
バイラテラルフィルタ(bilateral filter)を写真画像に適用させて果物を美肌に加工する
-
VCL
ガンマ補正を写真画像に適用させる(VCL)
ガンマ補正を写真画像に適用させ、画像のコントラストを調節し視認しやすくする
-
FMX
ガンマ補正を写真画像に適用させる(FMX)
ガンマ補正を写真画像に適用させ、画像のコントラストを調節し視認しやすくする
-
VCL
ソーベルフィルタを写真画像に適用させる(VCL)
ソーベルフィルタ(Sobel filter)を写真画像に適用させ境界(エッジ)を検出する
-
VCL
射影変換(Homography)で写真画像の台形や平行四辺形領域を長方形変換
射影変換(Homography)により写真画像の台形や平行四辺形領域を長方形写真画像変換する
-
VCL
透過型(アルファチャネル、ビット透過)PNG画像の拡大縮小ソースコード
透過型PNG画像(アルファチャネル、ビット透過)と非透過型PNG画像の拡大縮小サンプルソースコード
-
VCL
アナログ時計ガジェットを作成する
Delphiでアナログ時計ガジェットを作成する
-
FMX
国土地理院の地理院タイルを使用して地図を表示する
国土地理院のタイルマップを画像をインターネットからダウンロードして地図を表示する
- Excel操作
-
DelphiでExcelを操作する
Excelブックを作成してセルに値を入れ、書式と罫線を設定し、ファイルに保存します
-
Excel4Delphiでエクセル無しでエクセルファイルを読み書き
Excel4DelphiでExcelがインストールされてないOS上でエクセル無しで.xlsxエクセルファイルを読み書きする
- スレッド(TThread)
-
VCL
スレッド(TThread)を使って指定フォルダ以下のファイルを再帰探索
Delphiでスレッド(TThread)を使って指定フォルダ以下のファイルを再帰的に探索する
- グラフ(TChart)
-
VCL
Delphiでグラフを作成する ~TChart(teechart)
~折れ線グラフ、棒ブラフを作成
- 暗号化復号化
-
OpenSSLを使って暗号化、復号化を行う
DelphiでOpenSSLを使って暗号化、復号化を行う
-
DelphiでAES暗号化AES復号化ができるユニット(クラス)
DelphiでOpenSSLのようにAES128ECB,AES192ECB,AES256ECB,AES128CBC,AES192CBC,AES256CBC,AES128CTR,AES192CTR,AES256CTRによる暗号化復号化ができるユニット(クラス)
- クリップボード
-
VCL
Excelからクリップボードにコピーした値をDelphiからいろいろなフォーマット(形式)で取り出す
Excelでシートのセル範囲をコピーし、Delphiから様々なフォーマット(テキスト、CSV、HTMLテキスト、ビットマップ)でクリップボードから取り出す
- Skia4Delphi
-
VCL
Skia4DelphiでWebP画像を扱う、SVG画像を表示する、PDFファイルを作成する
Skia4Delphiを使ってWebP画像をjpeg画像に変換したり、jpeg画像をWebP画像に変換したり、svg画像を表示したり、pdfファイルを作成します。
- WebP画像変換
-
VCL
DelphiでWebP画像変換|delphi-webpライブラリの使い方とサンプルコード
DelphiでWebP画像に変換する方法を解説。delphi-webpライブラリの導入手順、DLL配置、Pascalコード例を掲載。jpg/pngからWebP、WebPからpngへの変換も可能。
Android
- Android 映像、写真
-
Android
フォトライブラリ(フォト、ギャラリー)を起動して選択した写真を表示する
フォトライブラリから選択写真を受け渡して表示するアプリを作成する
~TActionListのTTakePhotoFromLibraryActionを使用する場合 -
Android
フォトライブラリ(フォト、ギャラリー)を起動して選択した写真を表示する
フォトライブラリから選択写真を受け渡して表示するアプリを作成する
~IntentをstartActivityForResultで起動する場合 -
Android
無音で写真撮影するAndroid用カメラアプリを作る
Delphiで無音で写真撮影する「無音カメラ」Android用アプリケーションを作成する
-
Android
カメラ映像から顔認識するAndroid用アプリケーションを作る
Delphiでカメラ画像から顔認識するAndroid用アプリケーションを作成する
-
Android, windows
Androidのカメラの映像をアプリケーションテザリングでWindowsアプリに表示する
Androidのカメラ画像をアプリケーションテザリングでネットワーク接続してWindowsアプリに送信して表示する
- Android 音、音声
-
Android
Androidのボタンのクリック音を出すアプリケーションを作る
~DelphiでAndroidのボタンのクリック音など、既定の音を出すアプリケーションを作る
-
Android
音声認識するAndroidアプリケーションを作る
Delphiで音声認識アクティビティを呼び出して戻り値を表示するAndroidアプリケーションを作成する
-
Android
入力した文字列を読み上げるAndroidアプリケーションを作る ~Androidが話す
Delphiで入力したテキスト文字列をAndroidが喋る(Androidに喋らせる)アプリケーションを作成する
-
Android
録音再生を行うAndroidアプリケーションを作成する
Delphiで録音、録音した音の再生を行うAndroidアプリケーションを作成する(TMediaPlayer、TAudioCaptureDevice)
- Android SMS、メール
-
Android
SMS送信するAndroidアプリケーションを作る
DelphiでSMS送信するAndroidアプリケーションを作成する
-
Android
SMS送信して送信結果をBroadcastReceiverで受信するAndroidアプリケーションを作る
DelphiでSMS送信して送信結果をBroadcastReceiverで受信するAndroidアプリケーションを作る
-
Android
Delphiを使ってAndroidでメールを送信する
メールを送信するAndroidアプリケーションを作成する
- Android TWebBrowser(WebView)
-
Android
AndroidでTWebBrowser(WebView)に基本認証が設定されたWEBサイトを表示する
DelphiのTWebBrowser(WebView)で基本認証(Basic Authentification、ベーシック認証)が設定されたWEBサイトを表示するAndroidアプリを作成する
-
Android
AndroidでTWebBrowser(WebView)にCookieを設定してWEBサイトを表示する
DelphiのTWebBrowser(WebView)でクッキー(Cookie)を設定してWEBサイトを表示するAndroidアプリを作成する
- Android Push Notification
-
Android
Firebase Cloud Messaging(FCM)のAndroidプッシュ通知を受け取る
DelphiでFirebase Cloud Messaging(FCM)のAndroidプッシュ通知を受け取る
-
Android
Firebase Cloud Messaging(FCM)へandroidのPush通知を行うWindowsアプリケーションを作成
DelphiでFirebase Cloud Messaging(FCM)へandroidのPush通知を行うWindowsアプリケーションを作成する
- Android ファイル
-
Android
DelphiでAndroidのSharedPreferencesを使って値をファイルに保存する
AndroidのSharedPreferencesを使ってアプリケーションで保持する値を内部ストレージのxmlファイルに保存する
-
Android
Android用ファイラー アプリケーションを作る
ExplorerやFinderのようなAndroid用ファイラー アプリケーションを作成する
- Android センサー
-
Android
緯度・経度・高度・移動速度・移動方向を取得するAndroidアプリケーションを作成する
TLocationSensorコンポーネントは緯度・経度しか取得できないので、これを使わずに緯度・経度・高度・移動速度・移動方向を取得する
-
Android
Android用VRアプリを作成する
DelphiでAndroid用VRアプリを作成する(センサーに対応)
- Android 連絡帳(連絡先、アドレス帳)
-
Android
連絡帳(Address Book)の情報を表示するアプリケーションを作成
DelphiでAndroidの連絡帳(Address Book)から情報を取り出して表示するアプリケーションを作成する
- Android 生体認証
-
Android
TBiometricAuthコンポーネントでAndroidの生体認証機能を使う
DelphiでTBiometricAuthコンポーネントでAndroidの生体認証機能を使うアプリケーションを作成する
- Android その他
-
Android
OpenSSLでAES256暗号化するAndroidアプリケーションを作成する
DelphiでOpenSSLでAES256暗号化するAndroidアプリケーションを作成
-
Android
MediaProjectionを使ってスクリーンショットを撮る
DelphiでAndroidのMediaProjectionを使ってスクリーンショットを撮る
-
Android
Battery Managerを使用してバッテリー残量を取得
DelphiでAndroidのBattery Managerを使用してバッテリー残量を取得する
-
Android
AndroidのURL scheme(urlスキーム) でアプリを起動しパラメータを渡す
DelphiでAndroidの URL scheme(urlスキーム) でアプリを起動しパラメータを渡す
-
Android
AndroidのVibrator、VibrationEffectでバイブレーション機能を使う
DelphiでAndroidのVibrator、VibrationEffectでバイブレーション機能を使う
-
Android
Androidのホーム画面にショートカットを作成する(Android8.0以降)
DelphiでAndroidのホーム画面にショートカットを作成する(Android8.0 Oreo API Level 26 以降)
-
Android
IPアドレスを取得するAndroidアプリケーションを作成する
DelphiでIPアドレスを取得するAndroidアプリケーションを作成する
-
Android
Delphiで「ストップウォッチ」アプリケーションを作成する
DelphiでAndroidでもWindowsでも動作する「ストップウォッチ」アプリケーションを作成する
