○押せないボタンなどを押せるようにする


■Windowsでは構造的にHWNDのウインドウハンドルを取得できれば、コントロールを操作できます
HWNDは unsigned short型ですので、0からunsigned short型の最大までループでまわして
総当たりですべてのコントロールにメッセージを送信してすれば
押せないボタンや、選択できないコントロールを
操作できるように出来るはずです

EnableWindow((HWND)i,true) コントロールの有効に切り替え

とりあえず以下のようなプログラムを作成してみました

テストプログラム+ソース VisualC++6.0

#include <stdio.h>
#include <windows.h>

int main(){
	unsigned short i;
	for(i=0;i<(unsigned short)-1;i++){
		//cygwin の場合は true 、VisualC++の場合は TRUE
		EnableWindow((HWND)i,true);
	}
	return 0;
}



■電卓プログラムを実行して検証してみます



電卓を実行して、上記のプログラムを実行




押せないはずのボタンが押せるようになりました。



▲トップページ > プログラミングの実験