|
Delphi Programming / Object Pascal
[掲載 2001年02月23日] [更新 2016年04月29日] タックシール印刷コンポーネント |
タックシール印刷コンポーネント
印刷項目のプロパティ |
動作確認等 |
図は Windows 7 U64(SP1) + Delphi XE(UP1) Pro で作成 |
凡例 |
■ published
□ public
▲ ReadOnly |
印刷のコードは,Canvas プロパティが使用できる各イベント内に書くことができますが,項目エディタで設定することもできます.項目にはデータベースの項目値以外にも文字列,イメージなどを指定することができます.
追加した項目の初期状態は,描画位置とサイズ関係の値が全て 0 となっています.これらのプロパティの値を変更しなければ何も描画しません.
DrawMethod に指定可能なメソッド名は,以下の,印刷プレビュー制御コンポーネントの追加メソッド類となっています.None にすると何も描画しません.描画関係のイベントも,この項目では発生しなくなります. |
[備考]
著者の場合,実務アプリケーションではほとんどイベント内にコードを書いて設定しています.項目エディタで設定することはあまりありません. |
|
図1
項目プロパティ
- クラス名は TplTackColumn
- 描画メソッドが TextOutXX の場合は
X1, Y1 が描画基準座標値
- 描画メソッドが TextRectXX の場合は
X1, X2, Y1, Y2 が矩形 (長方形) 領域の座標
|
■ DrawMetohod |
String |
印刷に使用する追加メソッド名をリストから選択する
デフォルトは TextOutLT
None を選択するとプレビューも印刷もしない |
■ FieldName |
String |
DataSet の項目をリストから選択
任意の項目名(空白も可)も入力可能 |
■ X1 |
Integer |
長方形領域の左端 X 座標値
X1 = 0 はラベルの左端の X 座標値
X1 < 0 の部分は印刷しない
左端のオフセットより左側も印刷しない
単票形式の場合,X1 = 0 は用紙の左端 |
■X2 |
Integer |
長方形領域の右端 X 座標値
ラベルの幅を超える部分は印刷しない
右端のオフセットより左側は印刷しない |
■ Y1 |
Integer |
長方形領域の上端 Y 座標値
Y1 = 0 がラベルの上端の Y 座標値
Y1 < 0 の部分は印刷しない
上端のオフセット値より上の部分も印刷しない
単票形式の場合,Y1 = 0 は用紙の上端 |
■ Y2 |
Integer |
長方形領域の下端 Y 座標値
ラベルの高さを超えた部分は印刷しない
下端のオフセット値をえた部分も印刷しない |
■ SpaceX1 |
Integer |
長方形領域描画の際の左端オフセット値 |
■ SpaceX2 |
Integer |
長方形領域描画の際の右端オフセット値 |
■ SpaceY1 |
Integer |
長方形領域描画の際の上端オフセット値 |
■ SpaceY2 |
Integer |
長方形領域描画の際の下端オフセット値 |
■ Font |
TFont |
文字列のフォントプロパティ |
■ RectLine |
TPen |
長方形領域の枠線のプロパティ
Style を psClear にすると印刷しない |
■ RectLineR |
Integer |
長方形の角の丸み半径 |
■ RectColor |
TColor |
長方形領域内部の塗潰し色 |
■ Text |
String |
追加の文字列の指定
デフォルトは % でこれが描画データ
この前後に追加の文字列を指定する
% がない時は後に追加となる |
■ ImageFile |
String |
長方形領域内に描画するイメージファイルの指定
DrawMethod が StretchDrawImage の時のみ有効
実行時にこのファイルが必要なので注意
ImagePict よりも優先される |
■ ImagePict |
TPicture |
長方形領域内に描画する埋め込みイメージ
DrawMethod が StretchDrawImae の場合のみ有効
ImageFile が指定されている場合は無効 |
■ RectFitCnt |
Integer |
均等割付の文字列の枠の数
DrawMethod が TextRectFit の場合のみ有効 |
■ PrintOut |
Boolean |
印刷出力フラグ
True の時はこの項目を印刷する
False にするとプレビューだけで印刷はしない |
■ ZipFrame |
Boolean |
郵便番号枠印刷フラグ
DrawMethod が ZipOut か ZipOutEx の場合のみ有効
True の時は枠を印刷
False の時は枠の印刷なし |
SpaceX1, SpaceX2, SpageY1, SpaceY2 は,長方形領域名内の描画オフセットです.下図は SpaceX1 の場合の使用例です.赤枠の線が X1, X2, Y1, Y2 で指定した長方形です.
Delphi 2007 から導入された Margins (AlignWidthMargins プロパティと同じような値です. |
|
図2
SpaceX1 = 0 の場合 |
|
図3
SpaceX1 = 50 の場合 |
|