
No.2ベストアンサー
- 回答日時:
されていません。
無効であることと意味が異なりますので。
大体日本だと、こういうのがありますよね。
・Enabled=falseでいいじゃん
⇒背景色、文字色が濃くなって、見辛いのでNG
・ReadOnly=true、TabStop=falseでいいじゃん
⇒背景色変わってほしくない、マウスでフォーカスがあたるのでNG
・ラベルで表現すればいいじゃん
⇒情報のコピーを行うことができなくなるのでNG
よほど神経質でない限り、どちらかでいいのでしょうが、いちいちどうでもいい細かいところに
拘りたがります。
そういうの、ある特定条件下において入力可能/不可能が切り替わる時に、大変拘りだすと
思います。
結論は自作するしかありません。
WindowsAPIで実現する方法論は知りませんでしたが、私はOnReadOnlyChangedをオーバーライドして
コンポーネントを自作しましたよ。
加えて、ReadOnlyFocusApplyプロパティみたいなのを作って、trueならただのReadOnly状態、
falseならラベルで表現する、とかってしました。
先に記した状態3つがあるわけですが、ユーザーがどのレベルまで求めているのかによって
対応策が異なると思います。
⇒フォーカスが遷移しないのにWindowsの基本操作に従った手順でコピーは行いたいなんてのは
ムリなので。
この回答への補足
回答、ありがとうございます。
そんな大したことを望んでいるわけではないのですが…。
要はReadOnlyであろうとなかろうと、『カーソルをみえなくできれば』
良いのでして。
極端な話思いついたのは、カーソルと背景色を同じにできれば
見えなくできると思っていたのですが、それらしいのもないみたいでした。
実際にカーソルが存在していてもいいんです。要は見た目に気づかなければ
良いのですが、そんな方法はありますでしょうか?
No.5
- 回答日時:
>今でもまだ、APIを使用しなければ駄目でしょうか。
そもそも、「今でもまだ」とは、どういう意味でしょう
Readonly属性は、入力コントロールに対する変更を禁止にするだけの属性です
そして、入力コントロールなのですからキャレットが存在して当たり前です
キャレットの主な役割は、移動、変更、コピー&ペーストがあります
このうち、変更が禁止になっただけなので、移動とコピーのみが出来ますよ
という属性です
「今でもまだ」、まるでこの仕様が不具合で、まだ直っていないとでも
言いたそうですが、もともとがそういう仕様なのですから
今でもまだ、どころか、この先も変わる事は無いです
この回答への補足
回答、恐れ入ります。
決して不具合だとは思っていません。
要は、機能的にあろうとなかろうと、『キャレットを非表示にする』という
メソッドなりが追加されていてもおかしくないのではと思っただけです。
皆様の回答を見ていると、必要以上にこだわりのある
返答のように思えますが、私としては見えなくなってさえくれればいいわけで
当然そのようなメソッド、機能していても非表示にするとか、
キャレットと背景色を同じにするとか。
なので、非表示と無効というのを取り違えて回答するのはやめていただきたく存じます。
No.4
- 回答日時:
>『できるようになったのかどうか』という内容に、『LAbelで代用しろ』とは、
> 意図そのものが違っているのでは?
そういう事であれば、できませんし将来的にもできるようにはならないと思います。
No.3
- 回答日時:
> 実際にカーソルが存在していてもいいんです。
要は見た目に気づかなければ> 良いのですが、そんな方法はありますでしょうか?
それは入力可能になる場合がある項目なのでしょうか?
そうでないならば、やはりラベルで代用することが最も簡単でしょう。
そもそもフォーカスが当たらなければ良いわけですから。
もしくは、一度フォーカスが当たってもいいなら、フォーカスが当たった瞬間に
form.ActiveControl=nullにするとか。
No.1
- 回答日時:
「TeextBoxの内容を選択してクリップボードにコピー」という動作を許可する為にはReadOnlyでもキャレットが必要です。
ということで……ReadOnlyで配置する目的はなんでしょう?
Labelで配置ではダメなのでしょうか?
文字色や背景色まで変わってしまいますがEnabledプロパティで無効状態にしてしまう。というのもあるかも知れません。
この回答への補足
すみません。
せっかく回答いただけたのに、質問の意味がお分かりいただけてないようです。
『できるようになったのかどうか』という内容に、『LAbelで代用しろ』とは、
意図そのものが違っているのでは?
>「TeextBoxの内容を選択してクリップボードにコピー」という動作を許可する
ということを書いてはいないつもりですが、この文章はどこから出てきたのですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
C#でButtonのフォーカス枠を消したいのですが
C言語・C++・C#
-
c# 文字列の最後から1文字削除したい
C言語・C++・C#
-
C#にて別クラスの関数を使いたい
C言語・C++・C#
-
4
CloseとDisposeの違い
Visual Basic(VBA)
-
5
C# ログイン画面からメイン画面への画面遷移について
C言語・C++・C#
-
6
C#についてText Boxの枠
その他(ソフトウェア)
-
7
C# ユーザコントロール内のボタン押下を親で知る
その他(プログラミング・Web制作)
-
8
C#の改行について
その他(プログラミング・Web制作)
-
9
VB.NET DataGridView 縦スクロールバーを常に表示
Visual Basic(VBA)
-
10
DataGridViewで指定したセルの値を取得
Visual Basic(VBA)
-
11
C# シリアル通信でデータ受信時の欠損について
C言語・C++・C#
-
12
フルパスから最後のディレクトリ名を取得したい。
Visual Basic(VBA)
-
13
【C#】 あるイベントから別イベントを呼び出す。
その他(プログラミング・Web制作)
-
14
C#のループでtextboxに値を入れる方法
C言語・C++・C#
-
15
別のフォームで記述している関数を実行するには?C#
C言語・C++・C#
-
16
インスタンス参照でアクセスできない。代わりに型名?
C言語・C++・C#
-
17
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
18
DataGridViewでセルクリックイベントを発生させるには
Visual Basic(VBA)
-
19
C#で起動時のフォームを非表示にした後、Showで表示したいのですが
その他(プログラミング・Web制作)
-
20
「指定されたキャストは有効ではありません。」とエラーが出てしまいます。
Microsoft ASP
関連するQ&A
- 1 C# textbox内のテキストをクリックで表示
- 2 C# リッチテキストボックスへのドラッグ&ドロップ
- 3 C# テキストボックスにマウスが入るとアクティブじゃなくてもマウスホイールをスクロールさせたい
- 4 C# テキストボックスについて
- 5 【C#】テキストボックスに入っているファイル名(文字列)のオープン
- 6 C# visibleプロパティをfalseに設定したテキストボックス
- 7 C#で、テキストボックスの入力について。
- 8 Form2のテキストボックスを更新する方法(C#)
- 9 C#とc++の違いは何がありますか? また、似た部分は何がありますか? C#を勉強した後のc++は別
- 10 C#で動的に作ったtextboxを消す。
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
池袋サンシャイン通りでキャッ...
-
5
ガードレールの高さについて
-
6
『エッジの効いた○○』の意味。
-
7
業務に差し支えのないテンキー...
-
8
Flashゲームのブラウザ内での動...
-
9
マイクロダイエットを安く買う...
-
10
MFCでコンボボックスを選択不可...
-
11
VBでタッチパネルを・・・
-
12
テキストボックス 空白確認
-
13
動画のカメラワーク?
-
14
Verilog HDLで立下りと立ち上が...
-
15
卒業アルバムの集合写真!アイ...
-
16
矢印(左右)キーでイベントを...
-
17
三菱シーケンサで時計制御(時...
-
18
VBAでのユーザーフォーム上...
-
19
油性マジックで書いたサインを...
-
20
VC++2010のラジオボタンの選択...
おすすめ情報