EDITコントロールの文字列を数値に変換

返信する


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

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

トピックのレビュー
   

展開ビュー トピックのレビュー: EDITコントロールの文字列を数値に変換

ありがとうございます

by Keroro_ppp32.dll » 2008年3月27日(木) 11:02

こんな質問に答えていただき、ありがとうございます。
早速試してみます。

by イグトランス » 2008年3月26日(水) 23:21

これにはGetDlgItemInt関数が簡単です。

コード: 全て選択

Dim num As Long 
num = GetDlgItemInt(hNumIptDlg, NumIptBox, 0, TRUE)
hNumIptDlg, NumIptBoxはGetDlgItemと同じ2つを指定します。

これを使うには,「' TODO: この位置にグローバルな変数、構造体、定数、関数を定義します。」の下にこのDeclareをコピーして貼り付けてください。

コード: 全て選択

Declare Function GetDlgItemInt Lib "user32" (ByVal hDlg As HWND,ByVal nIDDlgItem As Long,ByVal lpTranslated As *BOOL,ByVal bSigned As BOOL) As DWord

by ゲスト » 2008年3月26日(水) 14:40

bufに正しい文字が記録しされているか確認してください。

試していませんが、下記でどうでしょう?

EDITコントロールの文字列を数値に変換

by popopo(^^) » 2008年3月26日(水) 13:37

はじめまして。ABを一ヶ月前から始めたpopopoと言う者です。
RADツールでウインドウに配置した一行エディットコントロール
に入力されている文字列を、数値に変換
(たとえば、文字列として「12345」と入力されていれば
「12345」という数値に変換)
したいのですが。
今のコードは

コード: 全て選択


Dim buf As String,num As Long
buf=ZeroString(GetWindowTextLength(GetDlgItem(hNumIptDlg,NumIptBox) ) )
GetWindowText(GetDlgItem(hNumIptDlg,NumIptBox),buf,GetWindowTextLength(GetDlgItem(hNumIptDlg,NumIptBox) ))
num=Int(Val(buf))
となっているのですが、ちゃんと変換されません。
AB始めたばかりでよく分からないのですが・・・・

ページトップ