エディトボックスの内容の取得方法

返信する


答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。

BBCode: ON
[img]: ON
[url]: ON
スマイリー: OFF

トピックのレビュー
   

展開ビュー トピックのレビュー: エディトボックスの内容の取得方法

by イグトランス » 2006年5月02日(火) 00:09

GetDlgItemInt関数を使えば直接数値として受け取ることができます。
過去ログを検索すれば幾つか例も見つかります。

或いはString型のBoxStrに対してVal関数を呼ぶと言う方法もありますが。

by ゲスト » 2006年5月01日(月) 22:56

BoxStrを、数値として扱う場合はどのようにすれば良いのでしょうか。

コード: 全て選択

BoxStr=Val(BoxStr)
BoxStr=2*BoxStr
BoxStr=Str$(BoxStr)
では駄目でした。
あと、Sub hMainWnd... で、hは要りませんでしたね。失礼しました。

by イグトランス » 2006年4月30日(日) 12:41

BoxStrがLong型なのが最大の原因です。
文字列を扱う型にして、SendMessageではそれをLong型にキャストして使います。
しかもBoxStrにはNumの文字数分のメモリを確保する必要があります。

というのは面倒なんでこれ使ってください。
http://www.activebasic.com/forum/viewtopic.php?t=432
こうなります。

コード: 全て選択

Sub hMainWnd_CommandButton1_Click()
    Dim BoxStr As String
    GetDlgItemTextStr(hMainWnd, EditBox1, BoxStr)
    MsgBox hMainWnd, BoxStr, "内容" 
End Sub

訂正です。

by ゲスト » 2006年4月30日(日) 03:35

コード: 全て選択

    Sub hMainWnd_CommandButton1_Click()
        Dim Num As DWord
        Dim BoxStr As Long
        Num=SendMessage(GetDlgItem(hMainWnd,EditBox1),WM_GETTEXTLENGTH,0,0)
        SendMessage(GetDlgItem(hMainWnd,EditBox1),WM_GETTEXT,Num,BoxStr)
        MsgBox hMainWnd,BoxStr,"内容"
    End Sub

エディトボックスの内容の取得方法

by ゲスト » 2006年4月30日(日) 03:31

ボタンをクリックでエディトボックスの内容をダイアログで表示したいのですが、

コード: 全て選択


    Sub Main_CommandButton1_Click()
        Dim Num As DWord
        Dim BoxStr As Long
        Num=SendMessage(GetDlgItem(hMainWnd,EditBox1),WM_GETTEXTLENGTH,0,0)
        SendMessage(GetDlgItem(hMainWnd,EditBox1),WM_GETTEXT,Num,BoxStr)
        MsgBox hMainWnd,BoxStr,"内容"
    End Sub
では取得できませんでした。どのようにすれば良いでしょうか。

ページトップ