小弟第一次发问,请众位哥哥指教 在我的vc工程中又很多菜单、按钮的资源ID,我想在一个界面上统一对所有资源ID进行属性设置,如在某种权限下对所有ID对应的按钮进行置灰,请问我怎么做 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用我的两个文件:WindowUtils.h:#pragma once#include <windows.h>class WindowUtil{public: static bool EnableChildWindow(HWND hWnd,bool bEnable);private: static BOOL CALLBACK EnumChildProc(HWND hwndChild,LPARAM lParam);};WindowUtils.cpp:#include "stdafx.h"#include "WindowUtils.h"bool WindowUtil::EnableChildWindow(HWND hWnd,bool bEnable){ if( ! IsWindow(hWnd) ) return false; ::EnumChildWindows(hWnd,EnumChildProc,bEnable); return true;}BOOL WindowUtil::EnumChildProc(HWND hwndChild,LPARAM lParam){ ::EnableWindow(hwndChild,(BOOL)lParam); return TRUE;}使用:比如对话框一个按钮点击中使用:WindowUtil::EnableChildWindow(GetSafeHwnd(),false);PS:对菜单没有用: 菜单得另外写,用EnableMenuItem 谢谢两位大哥的回信,这可是我第一次在csdn上得到帮助阿。但是我可能没有说清楚,我是想在一个界面维护整个工程里的所有资源enable情况,比如说在我设定的一个界面里设置主管对对某个对话框里的某个按钮有操作能力,而以后可以改变这一配置,需要能对所有资源进行上述操作,并且是在一个类里对所有资源操作,请大哥指教 这个很间单嘛有两种权限:a,b就定义一全局变量,CString power;当设置a权限power="A";当设置b权限power="B";然后在每一个dialog 的oninit事件中if (power=="A"){GetDialogItem(ID_BUTTON1)->EnabelWindow(false);GetDialogItem(ID_BUTTON2)->EnabelWindow(false);GetDialogItem(ID_BUTTON3)->EnabelWindow(false);...}else if (power=="B"){...} 不要忘了在要用到POWER的文件前加extern CString... to {lookyliu(刘琪) "而不是直接在程序里加入代码"}你比我不懒!看样子你还是用VB比较好,在VB中没要写什么代码就可以这样做了 请大家给说说聊天室软件的设计思路、思想 ***********牛人请进,如何使用sort方法对一个集合list排序?? 求助:调试的问题 在MDI中,可以在视图中建立另一个视图吗? 如何保存当前屏幕图像? 我连接建立一段时间后,send数据到服务器,然后客户端receive,服务器就想死了一样不给我发送数据了。 如何修改编译设置 >>这种错误如何调试??并不是在我写的代码中出错 怎么给硬盘加密?谢谢!! 关于“WSAIoctl 头文件” 高分的问题 (在线等) 请问在JPEGLIB2库里这句话是什么一样
#include <windows.h>
class WindowUtil
{
public:
static bool EnableChildWindow(HWND hWnd,bool bEnable);
private:
static BOOL CALLBACK EnumChildProc(HWND hwndChild,LPARAM lParam);
};WindowUtils.cpp:
#include "stdafx.h"
#include "WindowUtils.h"
bool WindowUtil::EnableChildWindow(HWND hWnd,bool bEnable)
{
if( ! IsWindow(hWnd) )
return false;
::EnumChildWindows(hWnd,EnumChildProc,bEnable);
return true;
}BOOL WindowUtil::EnumChildProc(HWND hwndChild,LPARAM lParam)
{
::EnableWindow(hwndChild,(BOOL)lParam);
return TRUE;
}
使用:
比如对话框一个按钮点击中使用:
WindowUtil::EnableChildWindow(GetSafeHwnd(),false);PS:对菜单没有用: 菜单得另外写,用EnableMenuItem
但是我可能没有说清楚,我是想在一个界面维护整个工程里的所有资源enable情况,比如说在我设定的一个界面里设置主管对对某个对话框里的某个按钮有操作能力,而以后可以改变这一配置,需要能对所有资源进行上述操作,并且是在一个类里对所有资源操作,请大哥指教
就定义一全局变量,CString power;当设置a权限power="A";当设置b权限power="B";然后在每一个dialog 的oninit事件中
if (power=="A")
{
GetDialogItem(ID_BUTTON1)->EnabelWindow(false);
GetDialogItem(ID_BUTTON2)->EnabelWindow(false);
GetDialogItem(ID_BUTTON3)->EnabelWindow(false);
...
}
else if (power=="B")
{
...
}
{lookyliu(刘琪)
"而不是直接在程序里加入代码"
}你比我不懒!
看样子你还是用VB比较好,在VB中没要写什么代码就可以这样做了