
No.4ベストアンサー
- 回答日時:
みているサンプルは
「Windows フォームアプリケーション」
で作成したプロジェクト用のものではありません。
どのタイミングで有効・無効を切り替えるかわかりませんが、
Enabledプロパティで変更できませんか?
this->button1->Enabled = false; // 無効
Control::Enabled プロパティ
http://msdn.microsoft.com/ja-jp/library/system.w …
回答ありがとうございます!
ビルドに成功し、ボタンの無効に成功しました
重ねてありがとうございます^^
下記3名の方々も、。すばやい対応ありがとうございました^^
No.3
- 回答日時:
.NET Formアプリケーション開発あるいはExpress EditionでMFCが使えない、なんてオチじゃないことを確認したいので、VC++のバージョンを提示してください。
この回答への補足
原因究明にご協力くださりありがとうございますm(__)m
バージョンは「バージョン5.1.2600 Service Pack 3 ビルド 2600」です
No.2
- 回答日時:
1.ビルド時に、どのようなエラーになりますか?
2.IDC_MYEDIT はツールから貼り付けたボタンのオブジェクトIDなのでしょうか?
※試しに VisualC++ 6.0 で試してみましたが、ボタンのオブジェクトIDがIDC_MYEDIT とすれば
(ボタンのオブジェクトIDがIDC_MYEDIT というのは紛らわしいですが)
CWnd* myWnd = GetDlgItem(IDC_MYEDIT);
myWnd->EnableWindow(TRUE);
により、無効化されたボタンを有効化できましたよ。
この回答への補足
回答いただきありがとうございますm(__)m
neko3839さんの張ってくださったプログラムを実行した結果
------ ビルド開始: プロジェクト: test2, 構成: Debug Win32 ------
test2.cpp
d:\visualstudio - d00\test2\test2\Form1.h(81): error C2065: 'CWnd' : 定義されていない識別子です。
d:\visualstudio - d00\test2\test2\Form1.h(81): error C2065: 'myWnd' : 定義されていない識別子です。
d:\visualstudio - d00\test2\test2\Form1.h(81): error C2065: 'IDC_MYEDIT' : 定義されていない識別子です。
d:\visualstudio - d00\test2\test2\Form1.h(81): error C3861: 'GetDlgItem': 識別子が見つかりませんでした
d:\visualstudio - d00\test2\test2\Form1.h(82): error C2065: 'myWnd' : 定義されていない識別子です。
d:\visualstudio - d00\test2\test2\Form1.h(82): error C2227: '->EnableWindow' : 左側がクラス、構造体、共用体、ジェネリック型へのポインターではありません。
型は ''unknown-type'' です。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
とエラーがでました
ボタンは
//
// button1
//
this->button1->Location = System::Drawing::Point(116, 119);
this->button1->Name = L"button1";
this->button1->Size = System::Drawing::Size(75, 23);
this->button1->TabIndex = 0;
this->button1->Text = L"button1";
this->button1->UseVisualStyleBackColor = true;
this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
//
という風に記述されています
初心者ですので、詳しい事がよくわかっていません。申し訳ないです
お時間割いて回答していただきありがとうございますm(__)m
No.1
- 回答日時:
CButton *button=(CButton*)GetDlgItem(IDC_MYEDIT);
button->EnableWindow(FALSE);
では駄目ですか?
有効、無効、可視、不可視、キャプションの変更などの為にメンバ関数を呼ぶ場合、オブジェクト変数は「コントロールの種類に合ったクラス」でなければなりません。
例えば、ボタンならCButtonクラスじゃないといけません。
共通親クラスであるCWndクラスでは「オブジェクトの実体がボタンなのか何なのか判らなくなっている」ので、EnableWindowメンバ関数を呼び出す事ができません。
この回答への補足
早速の回答ありがとうございます^^ノ
chie65535さんの張ってくださったプログラムを実行した結果
------ ビルド開始: プロジェクト: test2, 構成: Debug Win32 ------
test2.cpp
d:\visualstudio - d00\test2\test2\Form1.h(81): error C2065: 'CButton' : 定義されていない識別子です。
d:\visualstudio - d00\test2\test2\Form1.h(81): error C2065: 'CButton' : 定義されていない識別子です。
d:\visualstudio - d00\test2\test2\Form1.h(81): error C2059: 構文エラー : ')'
d:\visualstudio - d00\test2\test2\Form1.h(82): error C2039: 'EnableWindow' : 'System::Windows::Forms::Button' のメンバーではありません。
c:\program files\reference assemblies\microsoft\framework\.netframework\v4.0\system.windows.forms.dll : 'System::Windows::Forms::Button' の宣言を確認してください。
d:\visualstudio - d00\test2\test2\Form1.h(82): error C2065: 'FALSE' : 定義されていない識別子です。
というエラーがでました><、
一番最後は理解できるのですが、他が検討もつきません><、
ふがいない結果で申し訳ありませんでした
>有効、無効、可視、不可視、キャプションの変更などの為にメンバ関数を呼ぶ場合、オブジェクト変数>は「コントロールの種類に合ったクラス」でなければなりません。
>
>例えば、ボタンならCButtonクラスじゃないといけません。
>
>共通親クラスであるCWndクラスでは「オブジェクトの実体がボタンなのか何なのか判らなくなってい>>る」ので、EnableWindowメンバ関数を呼び出す事ができません
この部分の意味がよくわかりませんでした
もしかしてエラー内容に出ているのでしょうか?
無知で申し訳ありませんでした
お時間をとっていただき、ありがとうございます^^
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エディットボックスの入力制限について
C言語・C++・C#
-
画面を強制的に再描画させる方法
C言語・C++・C#
-
エディットボックスのフォントを変えたい
C言語・C++・C#
-
-
4
ボタンの表示の色、フォントを変更したい
C言語・C++・C#
-
5
MFCでコンボボックスを選択不可状態にしたい
C言語・C++・C#
-
6
CString から LPCTSTRの型に変換
C言語・C++・C#
-
7
ボタンの配置を変更したい
C言語・C++・C#
-
8
ラジオボタンのグループ化
C言語・C++・C#
-
9
ダイアログ表示時にチェックボックスにチェックされている状態にするには?
C言語・C++・C#
-
10
CStringの文字列検索&抜き出しについて
C言語・C++・C#
-
11
ダイアログの上のテキストボックスの、初期値を設定する方法が分かりません・・・・
C言語・C++・C#
-
12
VC++ ラジオボタンの初期値について
C言語・C++・C#
-
13
ボタン上にビットマップ、アイコンを貼り付ける方法
C言語・C++・C#
-
14
コンボボックス表示文字列を取得する場合
C言語・C++・C#
-
15
CFileDialogの最初のディレクトリ設定
C言語・C++・C#
-
16
ラジオボタンの値の取得について(C++)
C言語・C++・C#
-
17
CWnd::EnableWindow()の扱い方
C言語・C++・C#
-
18
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
19
SetWindowText関数について
C言語・C++・C#
-
20
CString型 全角半角を意識せずに「1文字」ずつ取り出す
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで =EMBED("Acrobat Docu...
-
パワーポイントのVBAでテキスト...
-
多人数のじゃんけんプログラム
-
Object型からDouble型へのキャスト
-
「?」→「setString」が使えません
-
C#でフォームのオブジェクト名...
-
オブジェクトレベルとメタレベル
-
VBAからノーツを起動
-
サブクラス化
-
ワイルドカード<?>と型パラメー...
-
「タイプ初期化子が例外をスロ...
-
中学のクラス数
-
eclipse-Tomcatでのデバッグに...
-
【sendkeysメソッドが動かずに...
-
JavaScriptからJAVAクラスを呼...
-
Java リフレクションについて
-
リフレクション
-
javascriptからjavaを呼び出したい
-
FEM解析の読み方は?
-
UMLのクラス図はmain()も含むん...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
パワーポイントのVBAでテキスト...
-
VBA 同じ名前のオブジェクトを...
-
Excelで =EMBED("Acrobat Docu...
-
COMコンポーネントって何?
-
VBAのWindowオブジェクトとWork...
-
ワイルドカード<?>と型パラメー...
-
error C2712: オブジェクト ア...
-
Object型からDouble型へのキャスト
-
C#でフォームのオブジェクト名...
-
質問すいません。 javascriptの...
-
EXCEL VBAにて動的にCheckBOXを...
-
ASP.net 教えてください!!(...
-
オブジェクトレベルとメタレベル
-
0 == False はいいけど
-
ActiveDirectoryのユーザ情報の...
-
Accessの連結・非連結オブジェ...
-
Vbで通常使用するプリンターを...
-
ビジュアルC++でボタンの有...
-
LISTBOXの内容が更新されま...
-
サーブレットのクラス図について。
おすすめ情報