[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2007/07/18(Wed) 21:56
投稿者名:どぼん
Eメール:
URL :
タイトル:
ある項目をセンタリングして印字する方法
VB6.0初心者のため、いつも参考にさせて頂いております。

クリレポのようなものは使用していない帳票で、すべての項目の印字位置は座標により細かく定義されています。この中の1項目を中央揃えで印字させたいのです。いろいろ参照しましたが、どうしても方法がわからないので、どなたかお教え下さい。
ちなみに、印字させる文字は全角のみ、半角のみ、両方混在の3パターンがあり、文字数が印字指定範囲をオーバーすることはありません。
どうぞよろしくお願いします。

投稿時間:2007/07/18(Wed) 22:20
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re: ある項目をセンタリングして印字する方法
> 中央揃えで印字させたいのです。

処理のイメージとしては、こんな感じで。
http://support.microsoft.com/kb/413158/ja

投稿時間:2007/07/19(Thu) 09:08
投稿者名:どぼん
Eメール:
URL :
タイトル:
Re^2: ある項目をセンタリングして印字する方法
魔界の仮面弁士様
おはようございます。早々のレスありがとうございました。また、返信が遅れてしまい申し訳ございませんでした。
早速やってみたいと思います。

> > 中央揃えで印字させたいのです。
> > 処理のイメージとしては、こんな感じで。
> http://support.microsoft.com/kb/413158/ja

投稿時間:2007/07/19(Thu) 17:27
投稿者名:どぼん
Eメール:
URL :
タイトル:
Re^3: ある項目をセンタリングして印字する方法
仮面の魔界弁士様
お世話になります。
あれから別件の作業があったりして、なかなか作業が進まず、この時間になってしまいました(雑談失礼しました。)。
お教え頂いたところを参照してやってみたのですが、変わらなかったり、コンパイルエラーになったりしてどうもうまくいきません。
具体的な数値でコーディングされている座標の値は、どのように記述したらよいのでしょうか?
コーディングは以下のような感じでされています。元のコーディングは、以前の担当者がやったもので・・・。

Public Function p_LBPStampPrintPosition(f_LBPStore As g_s_LBPStore)
 :
 :
   Call p_LBPPrint(5850 + i_X_Point, 8700 + i_Y_Point, f_LBPStore.g_s_LBP番号)


“f_LBPStore.g_s_LBP番号”がセンタリングしたい項目で、Common_Cnsで他の帳票項目とともに定義されています。“i_X_Point”と“i_Y_Point”は、場合によって微妙に印字位置が変わるものがあるので、条件によって違った値が入ります。
申し訳ございませんが、よろしくお願いします。

> > > 処理のイメージとしては、こんな感じで。
> > http://support.microsoft.com/kb/413158/ja

投稿時間:2007/07/19(Thu) 18:50
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^4: ある項目をセンタリングして印字する方法
計算すれば、いいだけでは。

センタリングで印刷したい位置の 中心 の座標位置は解りますよね。

印刷したい文字列の長さを求めて、その中心が、同じ位置になるように
計算をして印刷すればいいのでは。

印刷開始位置=中央揃えにしたい位置の中心ー(印刷する文字列の長さ÷2)

投稿時間:2007/07/19(Thu) 19:29
投稿者名:どぼん
Eメール:
URL :
タイトル:
Re^5: ある項目をセンタリングして印字する方法
花ちゃん様
ご享受頂き、ありがとうございました。
センタリングできる関数とかがあるのなら、それを教えて頂き、使いたかったのですが。
文字列の長さを地道に計算して印字する方法で対処したいと思います。

文末になりますが、魔界の仮面弁士様もありがとうございました。

また壁にぶち当たった時はよろしくお願いします。


> 計算すれば、いいだけでは。
>
> センタリングで印刷したい位置の 中心 の座標位置は解りますよね。
>
> 印刷したい文字列の長さを求めて、その中心が、同じ位置になるように
> 計算をして印刷すればいいのでは。
>
> 印刷開始位置=中央揃えにしたい位置の中心ー(印刷する文字列の長さ÷2)

投稿時間:2007/07/19(Thu) 20:30
投稿者名:じぇふ
Eメール:
URL :
タイトル:
Re^6: ある項目をセンタリングして印字する方法
> センタリングできる関数とかがあるのなら、それを教えて頂き、使いたかったのですが。
このような関数がないので

> 文字列の長さを地道に計算して印字する方法で対処したいと思います。
これを関数にしてしまえばいいって事です。

投稿時間:2007/07/19(Thu) 22:34
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^6: ある項目をセンタリングして印字する方法
> センタリングできる関数とかがあるのなら、それを教えて頂き、使いたかったのですが。

それが先に教えて貰った下記のサンプルでは。

>処理のイメージとしては、こんな感じで。
>http://support.microsoft.com/kb/413158/ja

投稿時間:2007/07/20(Fri) 10:33
投稿者名:どぼん
Eメール:
URL :
タイトル:
Re^7: ある項目をセンタリングして印字する方法
魔界の仮面弁士様 花ちゃん様 じぇふ様
おはようございます。大変お世話になりました。おかげさまで、指定位置にうまくセンタリングして印字できるようになりました!
結局、魔界の仮面弁士様に教えて頂いた関数を使用させて頂き、あっさりと実現することができました。昨夜あれだけ悩んでもできなかったのに・・・。これで自分としての財産を増やすことができました。
皆様、本当にありがとうございました。