VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/07/13(Sun) 04:35
投稿者Say
Eメール
URL
タイトルRe: MSFlexGridの印刷の質問

んー。一連の流れ見たら、
●MS AccessかMS Excel持ってるなら、そちらで作ったほうがはるかに楽です。
●VBでやるにしても、mdbファイル、DataGridコントロール、DataReportの
  組み合わせのほうが簡単でしょう。
●市販のocxの中には、GridやSheetを直接印刷する機能を持ったものもあります。
  予算に余裕があるなら、それを利用するのも手です。

それはさておき・・・

> 氏名の1段下に記録項目が表示されてしまいます。
多分、現状なら氏名データが全角4文字以内なら改行しません。
氏名データの文字列長がそれ以上になるのなら、
印刷位置を考え直しましょう。

> また、各記録項目のデータも各項目の下には表示されません。
  ◆位置あわせをきちんとやる。
  ◆等幅系フォントをつかう(プロポーショナルフォントを使わない)
  ◆フォントサイズは3の倍数にする
が原則です。
表示位置をTabやSpaceなどに頼らず、項目ごとにTextWidthで文字列幅とって
CurrentX,CurrentYを設定するようにすれば、Fontのことは気にしなくても大丈夫ですが・・・。

余談ながら、
ScaleModeをvbPointsにして、印刷部分をプロシージャ化して
Sub flexPrint(obj As Object)
    obj.Font.Size = 12
    obj.Font.Bold = False
    ....
みたいな書き方しておけば、

Call flexPrint(Printer)で印刷
Call flexPrint(Picture1)でプレビューできます。

紙代やインク代もバカにならないし。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -