问题1:
在MFC多文档程序中,如果要使其支持多种文档类型,需建立多个文档模板,程序
运行时,弹出一个对话框,让选择一个文档模板类型,之后以选定的文档模板建立
一个新文档,在WORD中,也支持多种文档类型,但其并不出现那个对话框,
它是如何实现的呢?另外,要使程序运行后,单击“打开”按钮,在“文件类型”
的列表框中显示*.zxc *.qaz *.qwe *.hhh(每个文档类型独占一行),
应加入怎样的代码?
问题2:
网络应用中,一般有以下两种情况,A.服务器24小时开机,客户机每接收一笔数据
,发往服务器,B.服务器定时开机,比如每日下午4点,客户机以文件的形式往服务器
传输文件,请问,这两种情况下,服务器和客户机的编程有何不同?另外,10个客户机同时向服务器发数据,使用不同的端口,服务器不使用多线程能否死机?
问题3:有项目A,它由两个模块组成B和C,有两种方法完成项目,一是在A中直接编写模块B和C
,由于B和C都很复杂,一个人完成项目有难度,二是由三个人分别设计A(壳),B,C,之后将其联编为一个exe文件,在TURBO C2.0中,建立prg文件包含B,C后编译即可,在
Visual c++6.0中如何实现,不能用调用exe文件的方法,因为B和C的参数较多。问题4:
如何隐藏功能,比如按Ctrl+R弹出一个对话框,在一般的编程中,如下实现:菜单中加一个菜单项,为该项加入一个函数,在函数中建立一个对话框即可。之后在工具栏中加入一项,修改其ID即可。我要实现的功能是,工具栏和菜单栏中都没有Ctrl+R的对应项,而按快捷键Ctrl+R却能弹出对话框。如何实现?
在MFC多文档程序中,如果要使其支持多种文档类型,需建立多个文档模板,程序
运行时,弹出一个对话框,让选择一个文档模板类型,之后以选定的文档模板建立
一个新文档,在WORD中,也支持多种文档类型,但其并不出现那个对话框,
它是如何实现的呢?另外,要使程序运行后,单击“打开”按钮,在“文件类型”
的列表框中显示*.zxc *.qaz *.qwe *.hhh(每个文档类型独占一行),
应加入怎样的代码?
问题2:
网络应用中,一般有以下两种情况,A.服务器24小时开机,客户机每接收一笔数据
,发往服务器,B.服务器定时开机,比如每日下午4点,客户机以文件的形式往服务器
传输文件,请问,这两种情况下,服务器和客户机的编程有何不同?另外,10个客户机同时向服务器发数据,使用不同的端口,服务器不使用多线程能否死机?
问题3:有项目A,它由两个模块组成B和C,有两种方法完成项目,一是在A中直接编写模块B和C
,由于B和C都很复杂,一个人完成项目有难度,二是由三个人分别设计A(壳),B,C,之后将其联编为一个exe文件,在TURBO C2.0中,建立prg文件包含B,C后编译即可,在
Visual c++6.0中如何实现,不能用调用exe文件的方法,因为B和C的参数较多。问题4:
如何隐藏功能,比如按Ctrl+R弹出一个对话框,在一般的编程中,如下实现:菜单中加一个菜单项,为该项加入一个函数,在函数中建立一个对话框即可。之后在工具栏中加入一项,修改其ID即可。我要实现的功能是,工具栏和菜单栏中都没有Ctrl+R的对应项,而按快捷键Ctrl+R却能弹出对话框。如何实现?
你在CYourWinApp::InitInstance()
{
//创建文档魔板,并将文档魔板保存为类的成员变量
//例如你创建了三个文档魔板,并分别保存为
//m_pTemplate1;
//m_pTemplate2;
//m_pTemplate3;
}
然后映射ID_FILE_NEW
void CYourApp::OnFileNew()
{
// TODO: Add your command handler code here
//不会出现提示框,直接打开m_pTemplate1对应的doc/view
m_pTemplate1->OpenDocumentFile(NULL);}
重载OnFileNew消息函数,然后自己调用CFileDialog来实现即可.
现在要求是B和C是A的子模块,即A可以以不同的参数使用B和C,
例如.txt
把IDR_TEXTTYPE改为:
\nText\nText\nTXT 檔案 (*.txt)\n.txt\nText.Document\nText Document
这需要修改多个地方,如添加图标、菜单等。可对照创建
工程时生成的那一个。
在resource.h中加入:
#define IDR_TEXTTYPE 130
String Table中也要加一项
使用热键
1、映射消息处理函数 ON_MESSAGE(WM_HOTKEY, OnHotKey)
2、定义热键 vk 作为注册热键的参数
3、注册系统热键
BOOL RegisterHotKey(
HWND hWnd, // handle to window
int id, // hot key identifier
UINT fsModifiers, // key-modifier options
UINT vk // virtual-key code
);
4、添加事件处理函数,这里是OnHotKey()例如:
...
ON_MESSAGE(WM_HOTKEY, OnHotKey)
...
HotKey = 'D';
RegisterHotKey(m_hWnd,m_WinShowHide, MOD_CONTROL, HotKey);
//注册热键为 Ctrl+'D'
...
OnHotKey()
{
...
你的对话框
...
}