StringGrid内の文字位置。上下から見て中央に配置するには?

解決


ゆきお  2003-10-24 04:08:11  No: 5380

度々恐れ入ります。
StringGridのセルにある文字を中央に配置したくてOnDrawCellイベントで
DrawText(Handle, PChar(StringGrid1.Cells[ACol,ARow]),
                 Length(StringGrid1.Cells[ACol,ARow]),
                 Rect,
                 DT_CENTER);
とやってみました。(夕方質問した時いただいたレスを参考にしてます)
DT_CENTER で左右から見た中央寄せになったのですが、上下から見ても中央
寄せにしたいと思っております。現状ではセルの上部にあり、文字の上の
方が少し隠れています。
セルのど真ん中に配置する事はできますでしょうか?
宜しくお願い申し上げます。


にしの  2003-10-24 04:16:11  No: 5381

そういうときこそ、検索してみましょう。
すでに、DrawTextで、DT_CENTERを使うと中央(横方向)になることはわかっているわけですから。

DT_CENTERを、DT_CENTER or DT_VCENTER or DT_SINGLELINEとすればOKです。
注意:複数行の場合にはできません。


通りすがり  2003-10-24 04:17:01  No: 5382

DT_SINGLELINE or DT_VCENTER or DT_CENTER
ではないでしょうか。


ゆきお  2003-10-24 04:54:18  No: 5383

にしのさん、通りすがりさん、こんばんは。
いつもお世話になっており恐縮です。
実行しました....大成功です。解決しました。
どうもありがとうございました。
追記:
検索については目を皿のようにして見ているつもりなのですが、
DrawTextについてもやっとこ「Windows API の DrawText 関数」
という言葉を見つけ、Wed上で「or」でつなげるコードを見つけた次第なの
ですが、ヘルプの見方が下手なのでしょうか?(多分そう思いますが)
キーワードで探したり、該当する文を選択してF1キーをしても出ない
ものがあるのです。
例えば[DT_CENTER]も出ないのですが、このような場合の検索の方法は
どうすればよろしいでしょうか?なるべく自分で問題解決しようと思っ
ているのですが検索しきれず、歯がゆい思いでおる次第です。


Halbow  2003-10-24 05:03:23  No: 5384

Halbow です。

>例えば[DT_CENTER]も出ないのですが、このような場合の検索の方法は
>どうすればよろしいでしょうか?なるべく自分で問題解決しようと思っ
>ているのですが検索しきれず、歯がゆい思いでおる次第です。

わたしの場合は、WEB から MSDN Library

http://msdn.microsoft.com/library/default.asp

にアクセスして、左上のところに DrawText と入力して検索すると
すぐに見つかります。無料でインストールできる CoreSDK では、
自分のPCで同じことができます。


HOota  2003-10-24 05:05:17  No: 5385

CDのJHELP野中にあるAPI32WH.HLPの中に、少ないですがあります。


Mr.XRAY  URL  2003-10-24 05:57:08  No: 5386

>ているのですが検索しきれず、歯がゆい思いでおる次第です。

例えば,検索ではよくGoogleを利用すると思いますが,
これで,検索を日本語にして

StringGrid DrawText Delphi

で検索すると,2番目に
「Delphi FAQ: StringGridで右寄せ表示。」
というのがあります.これをみると今の質問の使えるコードらしきもの
があるようです.
検索をうまく利用するのも,また技術の一つかも知れません.


ゆきお  2003-10-24 19:10:08  No: 5387

みなさまおはようございます。
色々教えていただきありがとうございました。
これからやってみようと思います。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加