0

私は、(とりわけ)ユーザーが緯度と経度の値を1000分の1秒までの精度で提供することを要求するWindowsフォームを作成しています。

美的理由から、これをすべて1つのテキストボックスに入れたいと思います。これを行うための最良の方法は、テキストボックスに特定の定数記号(つまり、度、分、秒の記号)を入れて、ユーザーに度、分、秒の適切な場所を知らせることだと思います。これらの記号はユーザーが編集できないようにする必要があり、理想的には方向を変更しないでください。つまり、私は次のようなものを想像します:

00°00′000″

ここで、各ゼロは編集可能なフィールドです。

既存の.NETコントロール(MaskedTextboxなど)を活用してこれを行う簡単な方法はありますか?それとも、これには昔ながらのエルボーグリースが必要ですか?

4

1 に答える 1

1

MaskedTextboxが最も簡単な方法です。

探しているものを取得するには、次のプロパティを設定します。

mtxtText.Mask = "00" & Chr(176) & "00" & Chr(146) & "000" & Chr(148)
mtxtText.PromptChar = "0"
mtxtText.TextMaskFormat = MaskFormat.IncludePromptAndLiterals
mtxtText.CutCopyMaskFormat = MaskFormat.IncludePromptAndLiterals

もちろん、ニーズに合わせて味付けすることもできます。ところで、Chr(176)は度の記号、Chr(146)は終了の一重引用符、Chr(148)は終了の二重引用符です。度、分、秒を取得するには、結果を解析する必要があります。

于 2012-08-07T22:28:51.640 に答える