Delphi 2009-11.0 AlexandriaとLazarusのVCL/LCLコンポーネントのコレクション
JPPACKは、LazarusおよびCodeTyphon用のDelphiおよびLCLコンポーネント用のVCLコンポーネントの小さなコレクションです。
サポートされているDelphiバージョン: 2009、2010 、 XE 、 XE2 、 XE3 、 XE4 、 XE5 、 XE6 、 XE7 、 XE8、10.0シアトル、 10.1ベルリン、 10.2東京、 10.3リオ、 10.4シドニー、 11.0アレクサンドリア。
Lazarus :必須FPCバージョン3.0.4 3.2.0または新しい(Lazarus 2.0.10 + FPC 3.2.0、Lazarus 2.2.0 + FPC 3.2.2およびLazarus 2.2.2 + FPC 3.2.2でテスト)。 Codetyphon :FPC 3.3.1 R2202141933でCodetyphon 7.7 R2202141933でテスト

これらのコンポーネントは数年以内に作成され、特定のプロジェクトの実装で必要な機能により、繰り返し変更、改善、拡張されました。一般的に、小さな混乱がありますが、すべてがうまくいくと思います(私は願っています!)。
私はVCLコンポーネントの作成に専門家ではなく、さまざまな無料のDelphiコンポーネント、特にCindyコンポーネントとPNGComponentsのソースコード(およびフラグメントを使用)を分析することで自分自身を支援しました。
グラフィック処理に関連する機能と手順のいくつかは、 Cindyコンポーネントから取得されました。勾配関連のルーチンは、このパッケージ( VCL.cyGraphics.pasファイル)からほぼ完全に取得されました。
Cindyコンポーネントの著者は、JúlioMaurícioAntunesPiaoです。ソースは、https://sourceforge.net/projects/tcycomponents/で入手できます。Júlioによって書かれた関数を使用するソースファイルで、彼のページへのリンクで関連情報を追加しました。
Delphiのさまざまなパッケージのさまざまなボタン(商業および無料)のさまざまなボタンとの長く激しい戦いの後、 PNGComponentsパッケージからPNGファイルを正しく表示するものを最終的に見つけました - tpngbitbtnおよびtpngspeedbuttonを見つけました。他の多くの人とは異なり、私は彼らに問題を抱えたことはありません。このため、ボタンの実装では、このパッケージのコードに依存することにしました。
PngComponentsパッケージの元の著者はMartijn Saly( www.thany.org )です。このプロジェクトは現在、Uwe Raabeによって維持されています。ソースはhttps://github.com/uweraabe/pngcomponentsで入手できます
フォルダーの3番目のパーティでは、 pngcomponents ver。 1.4.1。これは、このドキュメントを書くときに利用可能なPNGComponentsの最新バージョンであり、 JPPACKで正常に動作します。
2020.08.31-Githubのバージョンもうまく機能します。
JPPACKパッケージの各視覚コンポーネントは、 AnchoredControlsプロパティを使用して外部コンポーネントの固定をサポートしています。
外部コンポーネントをあらゆるエッジに固定できます。メインコンポーネントのサイズまたは位置を変更すると、固定されたコンポーネントの位置が自動的に更新されます。

JPPACKパッケージのほとんどのコンポーネントには、 TagExtプロパティがあります。ここでは、1つの整数値( IntValue )、string( StrValue )、float number( RealValue )、pointer( PointerValue )、date( DateValue )を保存できます。最初の3つの値は、Object InspectorおよびCodeで、最後の2つの値から利用できます。コードでのみです。
デフォルト値:
| 財産 | デフォルト値 |
|---|---|
TagExt.IntValue | 0 |
TagExt.StrValue | '' (空の文字列) |
TagExt.RealValue | 0 |
TagExt.PointerValue | nil |
TagExt.DateValue | Now |
高度にカスタマイズ可能なパネル。 TCustomPanel子孫。これは、 Cindyコンポーネントパッケージに含まれるパネルの1つに基づいて書かれています(ただし、どちらを正確に覚えていません)。

パネルは、上下の2つの部分に分割されています。それらのそれぞれについて、色(勾配または固体)を個別に定義できます。
すべてのパネルの境界線は個別に構成されています。各境界の異なる色、厚さ、スタイル、視認性を設定できます。
パネルには、無制限のキャプションのコレクションに対するサポートが組み込まれています。各キャプションには、独自のプロパティFont: TFontがあり、パネルの角に比較して中央に配置または配置できます。
さらに、 TJppPanelは、水平線、垂直線、水平バーの無制限のコレクションを組み込んだサポートが組み込まれています。
詳細...
TJppPanelの切り捨てられたバージョン。キャプション、垂直線、水平線、水平バーの組み込みコレクションはありません。
TJppBasicPanelの切り捨てられたバージョン。勾配は1つだけで、すべての境界線は同じ色( Appearance.BorderColor 。bordercolor)ですが、各境界線を隠すことができます( Appearance : DrawTopBorder 、 DrawBottomBorder 、 DrawLeftBorder 、 DrawRightBorder )。
このパネルは、基本的なUIレイアウトを作成するのに最適です。
JVCLパッケージのTJvRollOutパネルに基づく高度にカスタマイズ可能な折りたたみ式パネルhttps://github.com/project-jedi/jvcl/blob/master/jvcl/run/jvrollout.pas
元のライセンス:MPL 1.1
私の変更:パブリックドメイン

ScrollBoxに上位パネルを配置して、DelphiのCategoryPanelGroupシミュレートできます。
TCustomPanel子孫
コンポーネントの固定サポートを備えた標準パネル。
現在、Delphiのみです。
TJppPngButtonは、 pngcomponentsパッケージから拡張されたTPngBitBtnボタンです。

ボタンは、通常、ホット、ダウン(プレス)、焦点、無効化の5つの状態のいずれかにあります。各状態について、上下の勾配/固体色( TJppPanelと同様)、境界色、スタイル、幅、フォントパラメーター(色、名前、サイズ、スタイル)の全範囲のディスプレイパラメーターを設定できます。
システムの色でボタンを表示したい場合は、プロパティAppearance.DefaultDrawingを設定します。デフォルトドローイングはTrueになります( Appearance.<STATES>は無視されます)。
すべてのボタン状態のすべての色の数は非常に大きいので、すぐに使用できる配色(カラーマップ)を使用して表示された色を簡単に管理できるようにしました。
TJppPngButton用の36の異なる配色を作成しました。アクティブな配色を変更するには、 Object InspectorのColorMapTypeプロパティで利用可能なスキームの1つを選択します。
カラースキームは、 demosディレクトリのリポジトリにあるTJppPngButton Color Maps Designerプログラムで編集できます。
詳細...
現在、Delphiのみです。
このボタンは、 TJppPngButtonのわずかに切り捨てられたバージョンです。ボタン状態ごとに1つの勾配しかなく、配色をサポートしていません。
現在、Delphiのみです。
TJppBasicPngButtonに似ていますが、サブキャプションをサポートしています。

このボタンはTJppBasicPngButtonに非常に似ていますが、 TGraphicControlに基づいているため、焦点を合わせることはありません(焦点を絞った状態はありません)。
TCustomComboBox子孫。
追加のプロパティ:
AnchoredControlsBoundLabel内部ラベル。Flash - 点滅オプション。点滅をオンにするには、コードのFlashBackgroundメソッドを呼び出します。ShowLabelバウンドラベルを表示 /非表示にします。TagExt TCustomComboBoxEx子孫。
古いDelphiバージョンのアイテムの高さのバグを修正しました。

追加のプロパティ:
AnchoredControlsBoundLabel内部ラベル。Flash - 点滅オプション。点滅をオンにするには、コードのFlashBackgroundメソッドを呼び出します。ShowLabelバウンドラベルを表示 /非表示にします。TagExtItemIndex現在、Delphiのみです。
TFlatComboBoxに基づく高度にカスタマイズ可能なコンボボックス
https://github.com/jackdp/flatstyle/blob/master/source/tflatcomboboxunit.pas

事前に定義されたおよび/またはユーザー定義の色のリストを表示する高度にカスタマイズ可能なコンボボックス。




TJppColorComboBoxには、4つの組み込みコンポーネントがあります。1つのラベルと3つのボタンを変更し、コピー、貼り付けます。
色は、 RGB Int (例:051,102,255)、 RGB HEX (例:#3366FF)、およびBGR HEX (例:$ 00FF6633)の3つの形式で表示できます。色を別の形式で表示する必要がある場合は、 OnGetColorStrValueイベントハンドラーでこれを行うことができます。
標準のアイテム(色の表示)に加えて、セパレーターとCanhcolorアイテムを追加することもできます。
ユーザーによって選択された各色は、まだカラーリストに含まれていませんが、リストの端または上部に自動的に追加できます。これにより、アプリケーションのユーザーは、以前に選択された色の履歴にアクセスできます。
詳細...
事前に定義されたおよび/またはユーザー定義の色のリストを表示する高度にカスタマイズ可能なリストボックス。


TJppColorComboBoxに非常に似ていますが、コンポーネントが組み込まれていません。
TJPPColorsWatchは、2つの形式で色とその値(コード)を表示するコンポーネントです。

これは、3つの部分で構成されています。色を表示する長方形(左側)と、選択した色のコードと2つの長方形です。各部分を非表示にすることができるので、たとえば、選択した形式の色の長方形または色のみを備えた長方形のみを表示できます。
利用可能なカラー形式:
| 形式 | 例 |
|---|---|
ctBgr | 128,064,032 |
ctCmyk | 075,050,000,050 |
ctCppHex | 0x00804020 |
ctHslCss | 220,60%,31% |
ctHslWin | 146,144,075 |
ctHtml | #204080 |
ctPascalHex | $00804020 |
ctPascalInt | 8405024 |
ctRgb | 032,064,128 |
ctRgbPercent | 13%,25%,50% |
他の形式でカラーコードを表示する場合は、 OnGetTopColorStrValueイベントハンドラー(上部カラーコード用)およびOnGetBottomColorStrValue (下部)で実行できます。
TJPPColorsWatchexは、 TJPPColorsWatchの拡張バージョンです。ビルトインラベル( BoundLabel )と3つのボタンがあります: ButtonChangeColor 、 ButtonCopyColor 、およびButtonPasteColor 。
BoundLabelは標準的なラベル( TCustomLabel Descendant)であり、左、右、または上、または下に表示できます。ボタンはTJppBasicSpeedButtonクラスから継承されているため、すべてのボタン状態(通常、ホット、ダウン、無効)およびPNGアイコンの色を自由に設定できます。
JVCLパッケージのJVSPecialProgressに基づいた高度にカスタマイズ可能な進行状況バーですが、私の変更の多くがあります。 https://github.com/project-jedi/jvcl/blob/master/jvcl/run/jvspecialprogress.pas

私の修正:
外観
ここでは、コントロールの外観に関連する多くのパラメーターを変更できます:背景と進行状況バーの色(固体または勾配)、ボーダーの色とサイズ、フォント(通常および無効状態)、テキストのアライメント(上部左センター、最上部、左、左、中央)、プレフィックスとポストフィックス、テキストシャドウなど。標準の進行状況バーとは異なり、TJPPProgressBarでは、コンポーネントが無効になっているときに表示される色を設定することもできます。
Endmarker -Progress Barの終わりに描かれた長方形。
textDisplayMode-位置、パーセンテージ、ピクセル、キャプション、またはなしの位置。
ステージ:中間と最終 - ここで色補正を行うことができます。
ProgressBarvisible-ここでは、進行状況バーの表示をブロックし、テキストのみを表示できます。
AnchoredControls
コンポーネントの各エッジに1つの外部コントロール(Tbutton、Teditなど)をピン留めすることができます。
BoundLabel-内部ラベル
UpdatePositionIfdisabled-ここでは、コンポーネントが無効になっているときに進行状況バーを更新するかどうかを決定できます。
onprogresschanged
現在の位置が変更されたときにトリガーされます。ここで追加のアクションを実行できます。
tagext
現在、Delphiのみです。
Delphiの軽量HTMLヒントコンポーネント(Lazarusではコンパイルされていますが、動作しません)。

このコンポーネントは、2つのPascalユニットを組み合わせることによって作成されました。
フラットスタイルパッケージのtflathintunit.pas
https://github.com/jackdp/flatstyle/blob/master/source/tflathintunit.pas
ライセンス:無料(追加情報なし)
jvclパッケージのhthint.pas https://github.com/project-jedi/jvcl/blob/master/jvcl/install/jvclinstall/helpers/hthint.pas
ライセンス:MPL 1.1
変更のためのライセンス:ライセンスなし(パブリックドメイン)
TJPPHTMLHINTは、フル機能のHTMLコンポーネントではありません。これは、わずかに珍しい構文を備えた、ほんの数匹のHTMLタグをサポートする軽量で非常にシンプルなコンポーネントです。
サポートされているタグ:
B- <b>bold text</b>
i- <i>italic</i>
u- <u>underline</u>
s - <s>strike out</s>
C :色 - テキストの色、EG: <c:clRed>text</cl> 、 <cl:Red>text</c> 、 <c:#FF0000>text</c> 、 <c:255,0,0>RGB color</c>
BG :色 - 背景色、例<bg:clYellow>yellow background</bg>
IND :X-電流位置からのインデント。 eg. <ind:10>
aind :x-絶対的なインデント、例。 <aind:20>
FS :X-フォントサイズ、例<fs:12>some text</fs> 、 <fs:+4>text</fs>
FN :名前 - フォント名、例<fn:Verdana>text</fn> 、 <fn:Courier New>text</fn> 、 <fn:default>restore default font</fn>
メタコラー(またはモードカラー): Appearance.DarkModeColorsから撮影した色。DarkModeColorsまたはAppearance.LightModeColorsパレット
例: <c:mclDarkBlue><bg:mclLightGray>dark blue text on light gray background</bg></c>
HTMLエンティティ: JPP.HtmlHint.pasファイルの関数ReplaceHtmlEntities参照してください。
TCustomLabel子孫。
追加のプロパティ:AnchoredControls、tagext。
TJppLabelに基づいています。
追加のプロパティ:有効および無効な状態、無効化されたキャプション色、境界線(色、サイズ、スタイル)、パディング用の影。

TCustomLabel子孫。
5つの状態の追加のフォント( TFont )を備えたラベル:通常、訪問、ホット、訪問されたホット、無効化。
クリックした後、デフォルトのブラウザでURLを開きたり、 ShellExecuteを使用してファイルを実行したり、 TactionListからアクションを実行したりできます。
詳細...
3つの部分で構成されるラベルコンポーネント:
Caption )RightCaption )Jens Gruschel(http://www.pegtop.net/delphi/components/common/index.htm)によって書かれたPEGTOP共通コンポーネントのTpegtoplinelabelに基づいています。



私の修正:
Annex RightCaptionに改名されましたJppを追加しましたRightCaptionには、独自のフォント、背景、境界線の色があります。 RightCaption 、 RightCaptionPosDeltaYによって垂直に配置できます。ラインは、 LinePosDeltaYによって垂直に配置できます。ラインの長さはLineSizeDeltaX1およびLineSizeDeltaX2によって変更できます。 AutoHeight = Trueの場合、コンポーネントの高さが自動的に計算され、適用されます。
2つのキャプションで構成される単純なラベルコンポーネント:左(プロパティCaption )と右(プロパティRightCaption )。

キャプション間のスペースは、 Spacingプロパティを使用して変更できます。 tjppdoublelinelabelに基づいています。
TCustomEditから派生した編集コンポーネント。

追加のプロパティ:
AnchoredControlsAppearance - ここでは、4つの状態の背景とフォントの色を設定できます:通常、ホット、フォーカス、無効です。BoundLabel内部ラベルFlash FlashColor 、 FlashCount 、 FlashInterval 。点滅をオンにするには、 FlashBackgroundメソッドを呼び出します。この関数を使用して、ユーザーに誤った値を示すことができます。ShowLabelバウンドラベルを表示 /非表示にします。TagExt拡張タグ。現在、Delphiのみです。
TJppEditに似ていますが、境界線の色を定義する機能もあります。
フラットスタイルパッケージhttps://sourceforge.net/projects/flatstyle/のTFlatEditに基づくボーダー描画方法

TCustomMemo子孫。
追加のプロパティ:
AnchoredControlsAppearance - ここでは、4つの状態の背景とフォントの色を設定できます:通常、ホット、フォーカス、無効です。BoundLabel内部ラベルFlash FlashColor 、 FlashCount 、 FlashInterval 。点滅をオンにするには、 FlashBackgroundメソッドを呼び出します。この関数を使用して、ユーザーに誤った値を示すことができます。ShowLabelバウンドラベルを表示 /非表示にします。Text - Lines.Textへの簡単なアクセスTagExt拡張タグ。 TJppMemoに似ていますが、ボーダーの色を定義する機能もあります。
フラットスタイルパッケージのTFlatMemoに基づくボーダー描画方法https://sourceforge.net/projects/flatstyle/

TagExtおよびAnchoredControlsサポートを備えた標準のTCheckBox 。
TagExtとAnchoredControlsサポートを備えた標準的なTRadioButton 。
BoundLabel 、 TagExt 、およびAnchoredControlsサポートを備えた標準的なTDateTimePicker 。
Windowsのみ
ラザロとデルフィX2以降。
BoundLabelとAnchoredControls備えた高度にカスタマイズ可能なGDI+ハッチスタイルセレクター。

ブラシスタイルのリストを備えた高度にカスタマイズ可能なコンボボックス。

現在のスタイルは、 Selectedプロパティを使用して読み取り/セットできます。
Brush Styleディスプレイ名は、 OnGetDisplayNameイベントハンドラーで変更できます。
TJPPBRUSHSTYLECOMBOBOXには、組み込みラベル( BoundLabel )があります。
ペンスタイルのリストを備えた高度にカスタマイズ可能なコンボボックス。

現在のスタイルは、 Selectedプロパティを使用して読み取り/セットできます。
Penスタイルの表示名は、 OnGetDisplayNameイベントハンドラーで変更できます。
TJPPPenStyleComboBoxには、組み込みラベル( BoundLabel )があります。
いくつかの追加のプロパティとメソッドを備えた標準のTTimerコンポーネント:
RepeatCountLimitプロパティ。ここでは、 Intervalプロパティで指定された時間間隔の数に達することができる数を設定できます。値0制限がないことを意味します。Counterプロパティ。 Intervalプロパティで指定された時間間隔が期限切れになるたびに、 Counterプロパティは1によって増加されます。 Counter RepeatCountLimitの値に達すると、タイマーが停止し、 OnRepeatCountLimitReachedイベントハンドラーがトリガーされます(割り当てられた場合)。ClearCounterOnStartプロパティ。 Trueに設定されている場合、 StartメソッドはCounterをリセットします。Startメソッド。 TrueにEnabledセット。 ClearCounterOnStartがTrueに設定されている場合、 Start Counterプロパティを0に設定します。Stop方法。 EnabledをFalseに設定します。OnRepeatCountLimitReachedイベント - Counter RepeatCountLimitの値に達したときに発射されました。例:1秒ごとにカウンターを表示します。 10秒後にメッセージを表示し、 Timerのスイッチをオフにします。
procedure TForm1.FormCreate (Sender: TObject);
begin
JppTimer1.Interval := 1000 ;
JppTimer1.RepeatCountLimit := 10 ; // JppTimer1 will stop automatically after 10 seconds.
JppTimer1.Start;
end ;
procedure TForm1.JppTimer1Timer (Sender: TObject);
begin
Label1.Caption := JppTimer1.Counter.ToString;
end ;
procedure TForm1.JppTimer1RepeatCountLimitReached (Sender: TObject);
begin
ShowMessage( ' 10 seconds elapsed! ' );
end ;任意の数のPNG画像を保存できる非視覚コンポーネント。外部タイムコンポーネントに関連付けることができます。
Timagelistとは異なり、各画像は異なるサイズを持つことができます。画像は、DFMファイルのサイズを削減するビットマップではなく、PNGとして内部に保存されます。もちろん、PNG画像が圧縮されていると仮定します。
PNG画像は、Object InspectorまたはAddPngImage 、 AddImageFromFile 、またはItems.Insertメソッドを使用してコードに追加できます。
...
var
Png: TPngImage;
begin
Png := TPngImage.Create;
try
Png.LoadFromFile( ' C:image.png ' );
JppPngCollection.AddPngImage(Png);
// OR
// JppPngCollection.AddPngImageFromFile('C:image.png');
finally
Png.Free;
end ;
end ; AddPngImageメソッドはPNG画像のコピーを追加するため、上記の例でPngオブジェクトを解放する責任があります。
コレクションからPNG画像を取得するには、メソッドを使用できます: GetPngImage 、 GetPngImageByNameまたはItems[Index].PngImage 。
コレクションには、各PNG画像に関連付けられた追加のプロパティがあります。
Name : string;
Description: string;
Tag: integer;
Enabled: Booleanプロパティのみを読む:
Width: integer;
Height: integer;重要! TPNGIMAGEオブジェクトは、コレクションアイテムを作成するときに自動的に作成されます。コレクションのアイテムにPNG画像が割り当てられているかどうかを確認する場合は、 NILと比較して実行できません。 TPngImage.Emptyメソッドを使用する必要があります。
// Improperly
if JppPngCollection.Items[ 0 ].PngImage <> nil then ... // <-- Always returns True // Properly
if not JppPngCollection.Items[ 0 ].PngImage.Empty then ... // OK, image assigned TJppStorageCtrl 、コレクションにさまざまなタイプの情報を保存できる非視覚コンポーネントです。コレクションの各項目は、次のデータを保存します。
アイテムは、 StorageCollectionプロパティを使用してObject Inspectorからアクセスできます。ポインターを除くコレクションの各アイテムの値は、オブジェクトインスペクターに設定することもできます。ポインター値はコードでのみ設定でき、デフォルトでnilに初期化されます。
コード内のコレクションアイテムをAccesにするには、 Itemsプロパティを使用できます。
JppStorageCtrl.Items[ 0 ].IntValue1 := 1 ;
JppStorageCtrl.Items[ 0 ].PointerValue1 := SomePointer;ただし、 Itemsデフォルトのプロパティとして設定されているため、簡単に書くことができます。
JppStorageCtrl[ 0 ].IntValue1 := 1 ;
JppStorageCtrl[ 0 ].PointerValue1 := SomePointer;このコンポーネントは、グローバルデータにアクセスしたい場合に役立ち、グローバル変数を作成したくない場合があります。
私は時々、このコンポーネントをアプリケーションの作成の初期段階で使用します。後の段階では、データを保存および管理するための間違いなく優れた方法は、専門のレコード、クラス、配列、汎用/ポインターコンテナなどを設計することです。
追加のデータを使用して文字列のコレクションを保存できる非視覚コンポーネント。コレクションの各アイテムには、次のプロパティがあります。
ItemName: string;
Value : string;
Enabled: Boolean;
Tag: integer;JPPACKパッケージをインストールする前に、最初に次のパッケージをインストールする必要があります。
GetITパッケージマネージャーを使用してPNGコンポーネントをインストールした場合、 jppack.dpkファイルの名前PngComponents PngComponentsDに変更する必要があります。
パッケージフォルダーには、 Delphi 2009から10.4シドニーまでのすべてのDelphiバージョンのインストールパッケージを見つけることができます。 delphiバージョンの名前(xe7バージョンの場合はDelphi_XE7など)の名前でサブフォルダーに移動し、 JPPack.dprojまたはJPPack.dpkを開きます。 Project Managerで、 JPPack.bplファイルを右クリックして、ポップアップメニューでInstallを選択します。しばらくしてから、パッケージの正しいインストールに関する情報を表示し、新しくインストールされたコンポーネントのリストを使用してメッセージが表示されます。すべてのコンポーネントは、ツールパレットにJPPACKページを見つけることができます。
Win64ターゲットのパッケージをコンパイルすることもできます。
パッケージをインストールした後、 sourceフォルダーをライブラリパスに追加するのが最善です。
Tools - > Optionsを選択します。Environment Options - > Delphi Options - > Libraryに移動します。; (Semicolon)およびsourceディレクトリへのパス。まず、https://github.com/jackdp/jplibからJPlibパッケージをインストールします
Windowsで、https://github.com/jackdp/igdiplusmodからigdiplusmodもインストールします
Lazarus Ideのパッケージファイル( packagesLazarusjppacklcl.lpk )を開きます。 [ボタンCompileをクリックして、[ - > IDEをUse Installて再構築します。すべてのコンポーネントは、コンポーネントパレットにJPPACKLCLページを見つけることができます。
https://github.com/jackdp/jplibからJplibパッケージをインストールします
Windowsで、https://github.com/jackdp/igdiplusmodからigdiplusmodもインストールします
Packhon IDEでパッケージファイル( packagesCodeTyphonjppacklcl.ctpkg )を開きます。 [ツールバーの[2-nd] Compile packageをクリックして、[ツールバーの2-nd]ボタンをクリックし、[3-RD]ボタンをクリックし、[IDEのInstall ]を選択して再構築します。すべてのコンポーネントは、コンポーネントパレットにJPPACKLCLページを見つけることができます。
私の仕事のライセンス:パブリックドメイン。制限なしに、私のコードで何でも好きなことを行うことができます。
ただし、一部のユニットでは、他のオープンソースプロジェクトのコードを使用しているため、PASソースファイルとこれらのプロジェクトの著者のライセンスを詳細に確認する必要があります。