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 等のプロパティ使用方法


SpaceX1, SpaceX2, SpageY1, SpaceY2 は,長方形領域名内の描画オフセットです.下図は SpaceX1 の場合の使用例です.赤枠の線が X1, X2, Y1, Y2 で指定した長方形です.
Delphi 2007 から導入された Margins (AlignWidthMargins プロパティと同じような値です.


図2
SpaceX1 = 0 の場合
図3
SpaceX1 = 50 の場合