テキスト内に消せない文字を表示するには


きのこ  2005-11-23 02:19:30  No: 92828

どうしてもわからないので教えてください。
テキストに電話番号を入力するというもので1つのテキスト内に、
最初から「−」(ハイフン)を「    -      -      」のように表示させ、
3桁入力すると次のハイフンの横にカーソルがいくというものを作成したいのですが、①最初からハイフンを表示する②カーソルの移動をどうすればできるのかわからず、行き詰まっています。良きアドバイスをお願い致します。


まるち  2005-11-23 02:36:44  No: 92829

http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200511/05110136.txt


きのこ  2005-11-23 03:10:14  No: 92830

他の書き込みは消したので、アドバイスをお願いいたします。


abu  2005-11-23 05:44:01  No: 92831

簡単な方法としては
・TextBoxを3つ使って間にLabelで「−」を表示する
・Masked Editコントロールを使う

どうしてもTextBoxがいいならKeyDownイベントとかでキーコードを取得して
目的の動作になるようにゴリゴリとソースを書く

PictureBoxなんかにPrintしても良さそう

TextBoxで使えそうなプロパティやメソッド、イベントをMSDNでじっくり
眺めてみることですね。


Blue  2005-11-23 07:01:46  No: 92832

いちおう、むこうで
> Blue 2005/11/22(火) 17:51:48
> 過去ログも探してくださいね。
>
> 類似スレ
http://madia.world.coocan.jp/vb/vb_bbs/200407_04070080.html
ヒント出したつもりだったんですが。。。

まぁVB6前提ですけどね。

環境は必ず明記しましょう。


ヤマ@文系  2005-11-23 09:47:38  No: 92833

こんなんでどうです?
最初からハイフンは表示してませんけどね。

Private Sub Text1_Change()
Dim x As Integer
x = Len(Text1.Text)
If x = 3 Or x = 7 Then
Text1.Text = Text1.Text & "-"
Text1.SelStart = Len(Text1.Text)
End If
End Sub


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

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






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