VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/07/18(Fri) 15:28
投稿者nanashi
Eメール
URL
タイトルRe: テキストボックスのバイト制限

> オプションボタンAが選択されている場合は
> テキストボックスに20バイトのみ文字の入力制限をかけて、
> オプションボタンBが選択されている場合は
> テキストボックスに40バイトのみ文字の入力制限をかけたいのです。
>
> APIを使用せずにこのような操作が可能かどうか、
> もし可能なら、そのヒントを受け賜りたいのですが、

VBはUNICODEなので全角も半角も2Byteですが、
もし半角文字を1Byteとみなすのなら、APIなしに実現するのは面倒だと思います。

StrConvとLenBを使えば現在何Byte入力されているかが分かります。
Changeイベントでこれをチェックして、入力がオーバーしている時は
全体が指定Byte以下になるまで カーソル位置より前の文字を消していきます。
(この処理をしている間はフラグでも立てて同じ処理を通らないようにしておきます。)

これで一応出来るとは思いますが、やはりAPIを使った方が遥かに簡単ですよ。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -