アプリ版:「スタンプのみでお礼する」機能のリリースについて

VB.NET、WindowsMobile5.0の開発です。

ボタンコントロール内のテキストを改行したいのですがどうすればよいのでしょうか?
フォームロードで
Me.Button4.Text = "xxx" + vbCrLf + "yyy"
Me.Button4.Text = "xxx" & vbCrLf & "yyy"
としてみましたがxxxが上側へ張り付いてyyyは表示されません。
ボタンの範囲を広げてもyyyは表示されてませんでした。

モバイル特有の何らかの処理が必要なのでしょうか?
それともそもそも方法がだめなんでしょうか?

初歩的な質問で申し訳ありませんが、ご教授お願い申し上げます。

A 回答 (1件)

ボタンスタイルを変更しないといけないようです


WinAPIのGetWindowLog/SetWindowLogを使って BS_MULTILINEスタイルを加えましょう

Declare Function GetWindowLong Lib "coredll" _
(hWnd as IntPtr, nIndex as Integer) as Integer
Declare Function SetWindowLong Lib "coredll" _
(hWnd as IntPtr, nIndex as Integer, nValue as Integer) as Integer
Const GWL_STYLE = -16
Const BS_MULTILINE = &h2000
を宣言しておいて
FormLoadイベントなどで
dim nStyle as Integer = GetWindowLong( Button4.Handle, GWL_STYLE)
nStyle = nStyle Or BS_MULTILINE
SetWindowLong( Button4.Handle, GWL_STYLE, nStyle )
Button4.text = "xxx" & vbcrlf & "yyy"
として ボタンの高さを2行入るように変更しておきましょう
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
指示通りでうまく行きました。m__m
VBでWIN32APIを使えるんですね。
勉強になりました。

お礼日時:2008/11/05 20:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!