過去の桐井戸端BBS (桐ver.8) |
2781 | 入力時にパスワード等の「*****」みたいな表示をしたい | こまった君 | 1999/9/29-10:05 |
またまた困りました… (T_T) よくインターネットやネットワークログインで「パスワード」を入力したとき 「*****」と表示されますが(マスク表示というのですか?)、それを桐のフォーム (テキストボックス)で実現したいのです。 いろいろ設定を調べたり、テキストを2つ重ねてみたりしましたがうまくいきませ ん。 設定の方法、もしくは何か良い方法があったらお教えください。 (ToT) | |||
2788 | Re: | 宮城 | 1999/9/30-17:37 |
記事番号2781へのコメント ちょっと姑息ですが、フォントと背景を同色にすれば見えなくなることは 見えなくなりますけど。 | |||
2790 | Re: | こまった君 | 1999/9/30-18:37 |
記事番号2788へのコメント 宮城さん、コメントありがとうございます。 その方法も考えたのですが、入力した桁数の表示が欲しかったもので… やはりそういう設定はないのですね。 ありそうなものですけどね。悲しい… (T_T) p.s.最近、幅田さんをお見掛けしませんが…?どうされたのでしょう? | |||
2791 | Re: | ぷぷり | 1999/9/30-19:27 |
記事番号2790へのコメント こまった君さんは No.2790「Re:マスク表示(?)の設定方法」で書きました 。 表示桁だけでいいのなら、表示用のテキストボックスに #複写("*",#文字数([test])) って感じでも表示できるけどもちろん入力し終えないと 表示されませんが・・・・・ | |||
2792 | Re: | 悲しげ | 1999/9/30-20:44 |
記事番号2791へのコメント どもっ、こまった君さん、ぷぷりさん こまった君さんの質問を見て、そう云えば桐ver5で似たような 処理があったはずと思い、NIFTY/FAPPLIのライブラリーを見直 してみました。 もしNIFTYにアクセス可能なら参照してみて下さい。 FAPPLI/Lib3/#99/PW210.LZH 転載可能との記載はありましたが、著作権者の同意とかDOS用 の処理であることなどから、ここでは簡単にその考え方をご 紹介します。 基本的には、ぷぷりさんの次のやり方になるようです。 >表示桁だけでいいのなら、表示用のテキストボックスに >#複写("*",#文字数([test])) >って感じでも表示できるけどもちろん入力し終えないと >表示されませんが・・・・・ 画面に表示する文字列はこのようにします。 この他に、実際の入力値を別な項目または変数に受けておきます。 変数だとしたら、#複写("*",#文字数(&変数名))でしょうか。 次、値の入力は次のようにします。 1)古典一括(cmd)なら、「機能キー入力」コマンドの返り値を 文字に変換する。 2)イベント(kev)なら、「キー入力」イベントを使います。返り 値である&仮想キーコードの対照データは一括のヘルプHTML にあります。 #jis関数でそのまま変換できたような、そうでもなかったような? "0"〜"9"なら48〜57、"A"〜"Z"なら65〜90ですから、この辺りち ょっと試してみて下さい。(^^;) つまり、実際に値を入力するのではなく、押したキーの文字を 取得する訳です。 このように入力した値を(以下は変数方式の例) &実入力値=&実入力値+#jis(&仮想キーコード) /*@*/ &画面表示値=#複写("*",#文字数(&実入力値)) /*A*/ のような感じにして、値の正否判断は@を、画面表示にはAを使 うといいのではないかと思います。 大体こんな感じで、これらを例えば繰り返しループを使ったり、 途中で再描画(またはウィンドウ更新)させたり、文字数固定の 縛りをかけたりとか、色々と制御方法を試してみて下さい。 で、もしイベントでうまくできましたなら、他の方の参考のため に後悔、もとひ、公開していただけるとありがたいです。(^^)v | |||
2793 | Re: | 悲しげ | 1999/9/30-20:46 |
記事番号2792へのコメント すいません、訂正です。(^^;) × FAPPLI/Lib3/#99/PW210.LZH ○ FAPPLI/Lib7/#99/PW210.LZH | |||
2801 | Re: | いかすぱげてぃ | 1999/10/1-10:47 |
記事番号2793へのコメント 途中の文字列の編集などには対応していない、ものすごく安易なものですが、 訳あって(^^;書いたイベントソースですが、なにかのご参考になれば… *------------------------------------<パスワードの非表示化>-----* 手続き定義開始 tPassWord::編集文字列変更() *-- 超いい加減(^^; -------------<tPassWord:編集文字列変更>-----* 変数宣言 整数{&pos,&cnt} method @フォーム.フォーカスオブジェクト取得(&STR) if(&STR=tPassWord) method @tPassWord.編集選択位置取得( &pos , &cnt ) method @tPassWord.編集文字列取得(&STR) &STR = #s(&STR,"*","") &pos = #cond(&STR,&pos-2,1,&pos-1) &PassWordW =#sstr(&PassWordW,1,&pos)+&STR &STR = #複写("*",#文字数(&PassWordW)) method @tPassWord.編集文字列設定(&STR) method @tPassWord.編集選択位置設定( 100 ,0 ) end 手続き定義終了 入力値は入力後イベントでチェックします。 しかし、見なおすと安易な逃げをしてる場所が多い。(^^; 解説は…悲しげさんよろしく。(^^)V | |||
2804 | ありがとうございます | こまった君 | 1999/10/1-12:17 |
記事番号2801へのコメント 皆さん、ありがとうございます。 皆さんの意見を参考にして、いろいろ試してみたいと思います。 また、結果はご報告します。 まずは御礼まで。 (ToT) | |||
2808 | とんでもないことを思いつきました | こまった君 | 1999/10/1-20:02 |
記事番号2804へのコメント フォントエディターで、すべての半角英数字を「*」に置き換えたフォントファイル を新規作成し、パスワード入力をするテキスト項目の「フォント」にそのファイル を指定します。 一応うまくいきました。 まわりにいる人に入力文字が見えなければ良いのですから、これでもいいかなと 思っています。(ん〜本当によいのだろうか…) (T.T) |
|||
2811 | わっはっは・・・ | 悲しげ | 1999/10/1-21:54 |
記事番号2808へのコメント どもっ、こまった君、 >フォントエディターで、すべての半角英数字を「*」に置き換えたフォントファイル >を新規作成し、パスワード入力をするテキスト項目の「フォント」にそのファイル >を指定します。 >一応うまくいきました。 >まわりにいる人に入力文字が見えなければ良いのですから、これでもいいかなと >思っています。(ん〜本当によいのだろうか…) これは凄い! 思わず大笑いしてしまいました。 ps: #2801 いかすぱげてぃさま、 う〜ん、何とか動きますが、「解説」しようにも意味が判らんです。(;_;) あと、入力値を「入力後」イベントで、とのことですが、どの時点 でどのように変数に取得しておくのでしょう? |
6797 | Re:パスワード等の「*****」みたいな表示( #2781 ) | Ogo | 2000/07/09-13:55 |
過去ログ #2781 「入力時にパスワード等の「*****」みたいな表示をしたい」で >よくインターネットやネットワークログインで「パスワード」を入力 >したとき「*****」と表示されますが(マスク表示というのですか?)、 >それを桐のフォーム(テキストボックス)で実現したいのです。 桐のフォームではありませんが、それを可能とするアプレットを作成しました。 ドキュメントは不親切で、使用例もありませんが、興味のある方はごらん下さい。 現在、【多遊】さんのページのダウンロードコーナーで公開中。 http://www2u.biglobe.ne.jp/~s_tanaka/index.htm |