中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
<   <<   [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]  ... [20] >>   >
作者:
标题: DOS的界面开发终结者 上一主题 | 下一主题
ArmKing
初级用户





积分 66
发帖 22
注册 2006-8-27
状态 离线
『第 91 楼』:  如何支持 LCD Touch Panel?

请问配备相关硬件情况下,软件如何支持 LCD Touch Panel?


2006-8-28 02:03
查看资料  发送邮件  发短消息 网志  OICQ (396052549)  编辑帖子  回复  引用回复
ArmKing
初级用户





积分 66
发帖 22
注册 2006-8-27
状态 离线
『第 92 楼』:  

WinSail 内的某些控件做的有些小问题, 请问如何修改啊? 内核源码, 控件源码会公开吗?


2006-8-28 02:06
查看资料  发送邮件  发短消息 网志  OICQ (396052549)  编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 93 楼』:  

关于鼠标触摸屏: (1)在InitSystem()这前,向WinSail内核注册用户自己编写的鼠标功能调用函数 ::AfxRegisterMouseFc(::MyMouse_Touch); 其中MyMouse_Touch的原型为: void far MyMouse_Touch(unsigned int ax, unsigned int bx, unsigned int cx, unsigned int dx); void far MyMouse_Touch(unsigned int ax, unsigned int bx, unsigned int cx, unsigned int dx) { //Register AX = 0 --> Reset Mouse //Register AX = 1 --> Open Mouse //Register AX = 2 --> Close Mouse //Register AX = 3 --> IsMouseDown //Register AX = 4 --> SetMouseLocation REGS regs; _fmemset(&regs, 0, sizeof(REGS)); /* 在这时编写您自己的代码,参考鼠标功能调用INT33,根据入口和出口格式化regs寄存器 Register AX = 0 --> Reset Mouse ->复位鼠标 Register AX = 1 --> Open Mouse ->显示鼠标 Register AX = 2 --> Close Mouse ->不显示鼠标 Register AX = 3 --> IsMouseDown ->取按键信息 Register AX = 4 --> SetMouseLocation ->设置鼠标位置 */ //..... //..... //.... //这里根据regs返回值,格式化鼠标消息结构MOUSEMSG SystemMouse switch(ax) { case 0: //Reset Mouse { if (regs.x.ax == (unsigned) - 1) { SystemMouse.exist = 1; } else { SystemMouse.exist = 0; } SystemMouse.visible = FALSE; break; } case 1: //Open Mouse case 2: //Close Mouse { break; } case 3: //IsMouseDown { SystemMouse.statue = regs.x.bx; SystemMouse.point.x = regs.x.cx; SystemMouse.point.y = regs.x.dx; break; } case 4: //SetMouseLocation { SystemMouse.statue = 0; SystemMouse.times = 0; SystemMouse.point.x = cx; SystemMouse.point.y = dx; break; } default: { break; } } return; }


2006-8-28 11:26
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
profree
中级用户




积分 478
发帖 132
注册 2003-7-2
状态 离线
『第 94 楼』:  

winsail里如何获得复选框和单选框的状态? 我用GetRadio()不能获取


2006-9-18 23:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 95 楼』:  

用CRadio::SetBox()函数来设置复选框还是单选框。 用CRadio::SetRadio()函数来设置复选框/单选框的状态。 用CRadio::GetRadio()函数来获得复选框/单选框的状态。 用CRadio::GetStatic()函数来设置单选框的组属性。 对于单选框来说:有一个“组”的问题,如同Windows中的VC按钮控件的WS_GROUP属性。在一组中,只有组中的第一个CRadio才能有WS_GROUP属性。 假设有3个单选按钮,其构成3选一的一组逻辑操作,分别是 CRadio* pRadio1 --- 单选按钮1,内容为“男性” CRadio* pRadio2 --- 单选按钮2,内容为“女性” CRadio* pRadio3 --- 单选按钮3,内容为“保密” ......... CRadio* pRadio1 = new CRadio(pDialog); //分配实例 CRadio* pRadio2 = new CRadio(pDialog); //分配实例 CRadio* pRadio3 = new CRadio(pDialog); //分配实例 pRadio1->CreateObject(10,30 + 18 * 0, 100, 16, "男性"); pRadio2->CreateObject(10,30 + 18 * 1, 100, 16, "女性"); pRadio3->CreateObject(10,30 + 18 * 2, 100, 16, "保密"); pRadio1->SetBoX(FALSE); //是单选按钮,不是复选按钮 pRadio2->SetBoX(FALSE); //是单选按钮,不是复选按钮 pRadio3->SetBoX(FALSE); //是单选按钮,不是复选按钮 pRadio1->SetStatic(TRUE); //Radio1控件是Radio1~3单选按钮一组的第一个。 ................ 为了获得该组中是哪一个被选中,只能遍历该组中的每一个成员。 if (pRadio1->GetRadio()) { } else if (pRadio2->GetRadio()) { } else if (pRadio3->GetRadio()) { } ........ 所以profree提出的问题,可能是指“单选按钮”吧!


2006-9-19 03:55
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
profree
中级用户




积分 478
发帖 132
注册 2003-7-2
状态 离线
『第 96 楼』:  

谢谢回复 如果是复选框又怎么获得哪些项被选中了呢? 我很是搞不明白,如果我的一个窗口中有多个单选框/复选框,是分为一个以上组的,怎么分清是属于哪个组,又要怎么设置才能分开呢? 比如: 性别 分为 男,女, 年龄分为:15-20,21-30,31-40, 学历:大专,本科,硕士,博士 以上三个组都是同一窗口中,怎么分开设置,我认为应该有一个“归属于哪个组”的概念就好办多了 另外,如果一个对话框要设计成上一步,下一步,具体该怎么做?难道是上一步,下一步都要分别调用另一个函数来“画”对话框吗?这样如果对话框“画”多了,程序会就自动退出(应该是内存不够吧)


2006-9-19 22:54
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 97 楼』:  

VC++生成对话框,MakeDlg转换成WinSail的源代码,阅读之,可以较好的了解。 关于单选按钮(适用于WinSail及微软的Windows) (1)一个对话框中,可以有多“组”单选按钮 (2)一组单选按钮中,所有的单选按钮必须是连续分配的。 (3)一组单选按钮中的第一个单选按钮的属性是带有WS_GROUP窗口风格的 如果是VC,在单选按钮的属性框中选中Static属性。    如果是Winsail,调用CRadio::SetStatic(TRUE); (4)假设有3组单选按钮 第一组是性别 分为 男,女, 第二组是年龄:15-20,21-30,31-40, 第三组是学历:大专,本科,硕士,博士 //第一组 CRadio* pRadio1 = new CRadio(pDialog); //分配实例 CRadio* pRadio2 = new CRadio(pDialog); //分配实例 pRadio1->CreateObject(10,30 + 18 * 0, 100, 16, "男"); pRadio2->CreateObject(10,30 + 18 * 1, 100, 16, "女"); pRadio1->SetBox(FALSE); //是单选按钮,不是复选按钮 pRadio2->SetBox(FALSE); //是单选按钮,不是复选按钮 pRadio1->SetStatic(TRUE); //Radio1控件是Radio1-2的组带头人 //第二组 CRadio* pRadio3 = new CRadio(pDialog); //分配实例 CRadio* pRadio4 = new CRadio(pDialog); //分配实例 CRadio* pRadio5 = new CRadio(pDialog); //分配实例 pRadio3->CreateObject(10,50 + 18 * 0, 100, 16, "15-20"); pRadio4->CreateObject(10,50 + 18 * 1, 100, 16, "21-30"); pRadio5->CreateObject(10,50 + 18 * 2, 100, 16, "31-40"); pRadio3->SetStatic(TRUE); //Radio3控件是Radio3-5的组带头人 //第三组 CRadio* pRadio6 = new CRadio(pDialog); //分配实例 CRadio* pRadio7 = new CRadio(pDialog); //分配实例 CRadio* pRadio8 = new CRadio(pDialog); //分配实例 CRadio* pRadio9 = new CRadio(pDialog); //分配实例 pRadio6->CreateObject(10,70 + 18 * 0, 100, 16, "大专"); pRadio7->CreateObject(10,70 + 18 * 1, 100, 16, "本科"); pRadio8->CreateObject(10,70 + 18 * 2, 100, 16, "硕士"); pRadio9->CreateObject(10,70 + 18 * 3, 100, 16, "博士"); pRadio6->SetStatic(TRUE); //Radio6控件是Radio6-9的组带头人 ------------------------------------------------------------ WinSail V2.0的GUI有一些已经更新,可重新下载了!


2006-9-20 05:04
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 98 楼』:  

(1)WinSail V2.0的全局控件句柄只有120个。     #define MAX_OBJECT_LIST_COUNT 120 (2)WinSail V2.0运行于实模式,受DOS的640K内存限制。 (3) 每一个窗口/对话框中的控件不限,受内存和全局控件句柄个数限制。


2006-9-20 05:19
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
profree
中级用户




积分 478
发帖 132
注册 2003-7-2
状态 离线
『第 99 楼』:  

我的窗口需要使用下一步,上一步来完成,我想按下一步或上一步时,删除本窗口,重新生成新的窗口,我定义一个全局变量,在执行下一步时,先删除上一窗口,再生成新的窗口,但不成功,不知是为什么


2006-9-21 00:20
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 100 楼』:  

不能在本窗口的“控件”函数里面删除其父窗口。 只能发出窗口退出消息,可通过 void CloseWindow(CObject* pObj); -------- 窗口返回值为“IDCLOSE” void ClickCloseButton(CObject* pObj); --- 窗口返回值为“IDCLOSE” void ClickEnterButton(CObject* pObj); --- 窗口返回值为“IDOK” void ClickCancelButton(CObject* pObj); -- 窗口返回值为“IDCANCEL” void ClickYesButton(CObject* pObj); ----- 窗口返回值为“IDYES” void ClickNoButton(CObject* pObj); ------ 窗口返回值为“IDNO” void ClickRetryButton(CObject* pObj); --- 窗口返回值为“IDRETRY” 窗口消息循环函数为: int CWindow::PurseMessage(); 对话框消息循环函数为:int CDialog::DoModal(); int CDialog::DoModal()的函数源代码为 int CDialog::DoModal() { return(CWindow::PurseMessage()); } void ClickEnterButton(CObject* pObj)的函数源代码为 void ClickEnterButton(CObject* pObj) { ::CloseWindow(pObj); extern int nAfxMessageFlags; nAfxMessageFlags = IDOK; } void ClickCancelButton(CObject* pObj)的函数源代码为 void ClickCancelButton(CObject* pObj) { ::CloseWindow(pObj); extern int nAfxMessageFlags; nAfxMessageFlags = IDCANCEL; }


2006-9-21 21:28
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 101 楼』:  

int CWindow::PurseMessage()的函数源代码为 int CWindow::PurseMessage() { int nOldMessageFlags = nAfxMessageFlags; // 保护原值 nAfxMessageFlags = IDNULL; //刷新窗口退出标志 //...... //窗口消息循环 while (nAfxMessageFlags == IDNULL) { //.... } //... int nResult = nAfxMessageFlags; nAfxMessageFlags = nOldMessageFlags; //恢复原值 return (nResult); }


2006-9-21 21:34
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 102 楼』:  发给一个实用的“向导”类

/* 向导属性封装,由于WinSail受640K内存限制,可以这样来设计 (1)向“向导页”注册的页是函数,函数原型为 int far page(CObject* pObj); 对返回值要求 IDNO ------ 表示单击了“上一步”按钮 IDYES ----- 表示单击了“下一步”按钮 IDCANCEL -- 表示单击了“退出”按钮 (2)最多支持MAX_WIZARD_COUNT ( =10)个页 */ #include <Symbol.h> #include <Myframe.h> #define MAX_WIZARD_COUNT 10 class CWizard { private: int m_nOrder; int m_nCount; int far (*m_psFc[MAX_WIZARD_COUNT])(CObject *); public: BOOL AddDialog(int far (*pFc)(CObject*)); public: int DoWizard(); public: CWizard(); ~CWizard(); }; CWizard::CWizard() { m_nOrder = 0; m_nCount = 0; for (int i = 0; i < MAX_WIZARD_COUNT; i++) { m_psFc[i] = NULL; } } CWizard::~CWizard() { } BOOL CWizard::AddDialog(int far (*pFc)(CObject *)) { if (pFc == NULL || m_nCount >= MAX_WIZARD_COUNT) { return (FALSE); } m_psFc[m_nCount++] = pFc; return (TRUE); } int CWizard::DoWizard() { //1 - IDNO -- Prev //2 - IDYES -- Next //3 - Cancel -- Cancel int far (*pFc)(CObject *) = NULL; int nResult = IDCLOSE; while (1) { pFc = m_psFc[m_nOrder]; if (pFc == NULL) { break; } nResult = pFc(NULL); if (nResult == IDNO) { if (m_nOrder > 0) { m_nOrder--; } continue; } else if (nResult == IDYES) { if (m_nOrder + 1 < m_nCount) { m_nOrder++; } continue; } break; } return (nResult); }


2006-9-21 23:53
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 103 楼』:  

将CWizard::AddDialog()函数改名为CWizard::AddPage()函数 现举例如下: #include <Symbol.h> #include <MyFrame.h> int far Page1(CObject* pCurObj) { //Create a Dialog On the Center of Desktop CDialog* pDialog = new CDialog;//分配实例 pDialog->CreateWindow(0, 0, 321, 240, "第一页:1");//建立窗口 pDialog->Center();//窗口对中 //Create Close's Button Control CCloseButton* pCloseButton = new CCloseButton(pDialog);//分配和建立关闭按钮 //Create a Button Control CButton* pButton1 = new CButton(pDialog); pButton1->CreateObject(10, 199, 93, 24, "上一步(\x3P\x3)"); pButton1->SetShortcutKey(VK_ALT_P); pButton1->SetFc(ClickNoButton); //Create a Button Control CButton* pButton2 = new CButton(pDialog); pButton2->CreateObject(111, 199, 93, 24, "下一步(\x3N\x3)"); pButton2->SetShortcutKey(VK_ALT_N); pButton2->SetFc(ClickYesButton); //Create a Button Control CButton* pButton3 = new CButton(pDialog); pButton3->CreateObject(211, 199, 93, 24, "退出(\x3\C\x3)"); pButton3->SetShortcutKey(VK_ALT_C); pButton3->SetFc(ClickCancelButton); //Create Radio Control CRadio* pRadio1 = new CRadio(pDialog); pRadio1->CreateObject(28, 59, 57, 24, "男姓"); pRadio1->SetStatic(TRUE); pRadio1->SetRadio(TRUE); pRadio1->SetID(RADIOBASE + 1 - 1); //Create Radio Control CRadio* pRadio2 = new CRadio(pDialog); pRadio2->CreateObject(100, 61, 57, 24, "女性"); pRadio2->SetID(RADIOBASE + 2 - 1); //Create Radio Control CRadio* pRadio3 = new CRadio(pDialog); pRadio3->CreateObject(171, 61, 57, 24, "保密"); pRadio3->SetID(RADIOBASE + 3 - 1); //Create Radio Control CRadio* pRadio4 = new CRadio(pDialog); pRadio4->CreateObject(28, 148, 57, 24, "大专"); pRadio4->SetStatic(TRUE); pRadio4->SetRadio(TRUE); pRadio4->SetID(RADIOBASE + 4 - 1); //Create Radio Control CRadio* pRadio5 = new CRadio(pDialog); pRadio5->CreateObject(100, 148, 57, 24, "本科"); pRadio5->SetID(RADIOBASE + 5 - 1); //Create Radio Control CRadio* pRadio6 = new CRadio(pDialog); pRadio6->CreateObject(169, 148, 57, 24, "硕士"); pRadio6->SetID(RADIOBASE + 6 - 1); //Create Radio Control CRadio* pRadio7 = new CRadio(pDialog); pRadio7->CreateObject(229, 147, 57, 24, "博士"); pRadio7->SetID(RADIOBASE + 7 - 1); //Create Group Control CStatic* pGroup1 = new CStatic(pDialog); pGroup1->CreateObject(10, 29, 285, 67, "性别"); //Create Group Control CStatic* pGroup2 = new CStatic(pDialog); pGroup2->CreateObject(10, 118, 285, 66, "学位"); //Show Window pDialog->ShowWindow();//显示窗口 //go into Message Loop int nResult = pDialog->DoModal();//进入窗口消息循环 //Destroy Window delete pDialog;//删除对话框 return (nResult); } int far Page2(CObject* pCurObj) { //Create a Dialog On the Center of Desktop CDialog* pDialog = new CDialog;//分配实例 pDialog->CreateWindow(0, 0, 321, 240, "第二页:2");//建立窗口 pDialog->Center();//窗口对中 //Create Close's Button Control CCloseButton* pCloseButton = new CCloseButton(pDialog);//分配和建立关闭按钮 //Create a Button Control CButton* pButton1 = new CButton(pDialog); pButton1->CreateObject(10, 199, 93, 24, "上一步(\x3P\x3)"); pButton1->SetShortcutKey(VK_ALT_P); pButton1->SetFc(ClickNoButton); //Create a Button Control CButton* pButton2 = new CButton(pDialog); pButton2->CreateObject(111, 199, 93, 24, "下一步(\x3N\x3)"); pButton2->SetShortcutKey(VK_ALT_N); pButton2->SetFc(ClickYesButton); //Create a Button Control CButton* pButton3 = new CButton(pDialog); pButton3->CreateObject(211, 199, 93, 24, "退出(\x3\C\x3)"); pButton3->SetShortcutKey(VK_ALT_C); pButton3->SetFc(ClickCancelButton); //Create Radio Control CRadio* pRadio1 = new CRadio(pDialog); pRadio1->CreateObject(28, 64, 57, 24, "北京"); pRadio1->SetStatic(TRUE); pRadio1->SetRadio(TRUE); pRadio1->SetID(RADIOBASE + 1 - 1); //Create Radio Control CRadio* pRadio2 = new CRadio(pDialog); pRadio2->CreateObject(100, 65, 57, 24, "上海"); pRadio2->SetID(RADIOBASE + 2 - 1); //Create Radio Control CRadio* pRadio3 = new CRadio(pDialog); pRadio3->CreateObject(171, 65, 57, 24, "广州"); pRadio3->SetID(RADIOBASE + 3 - 1); //Create Combo Control CComboBox* pComboBox1 = new CComboBox(pDialog); pComboBox1->CreateCombo(124, 122, 169, 24, NULL); pComboBox1->SetID(COMBOBASE + 1 - 1); //Create Group Control CStatic* pGroup1 = new CStatic(pDialog); pGroup1->CreateObject(10, 34, 285, 67, "籍贯"); //Create a Label Control CLabel* pLabel1 = new CLabel(pDialog); pLabel1->CreateObject(13, 125, 67, 12, "选择年份(N)"); //Show Window pDialog->ShowWindow();//显示窗口 //go into Message Loop int nResult = pDialog->DoModal();//进入窗口消息循环 //Destroy Window delete pDialog;//删除对话框 return (nResult); } int far Page3(CObject* pCurObj) { //Create a Dialog On the Center of Desktop CDialog* pDialog = new CDialog;//分配实例 pDialog->CreateWindow(0, 0, 321, 240, "第三页:3");//建立窗口 pDialog->Center();//窗口对中 //Create Close's Button Control CCloseButton* pCloseButton = new CCloseButton(pDialog);//分配和建立关闭按钮 //Create a Button Control CButton* pButton1 = new CButton(pDialog); pButton1->CreateObject(10, 199, 93, 24, "上一步(\x3P\x3)"); pButton1->SetShortcutKey(VK_ALT_P); pButton1->SetFc(ClickNoButton); //Create a Button Control CButton* pButton2 = new CButton(pDialog); pButton2->CreateObject(111, 199, 93, 24, "下一步(\x3N\x3)"); pButton2->SetShortcutKey(VK_ALT_N); pButton2->SetFc(ClickYesButton); //Create a Button Control CButton* pButton3 = new CButton(pDialog); pButton3->CreateObject(211, 199, 93, 24, "退出(\x3\C\x3)"); pButton3->SetShortcutKey(VK_ALT_C); pButton3->SetFc(ClickCancelButton); //Create Slider Control CSliderCtrl* pSliderCtrl1 = new CSliderCtrl(pDialog); pSliderCtrl1->CreateObject(37, 153, 241, 24, NULL); pSliderCtrl1->SetID(SLIDERBASE + 1 - 1); pSliderCtrl1->SetHorz(TRUE); //Create Slider Control CSliderCtrl* pSliderCtrl2 = new CSliderCtrl(pDialog); pSliderCtrl2->CreateObject(138, 38, 30, 111, NULL); pSliderCtrl2->SetID(SLIDERBASE + 2 - 1); pSliderCtrl2->SetHorz(FALSE); //Show Window pDialog->ShowWindow();//显示窗口 //go into Message Loop int nResult = pDialog->DoModal();//进入窗口消息循环 //Destroy Window delete pDialog;//删除对话框 return(nResult); } void DemoWizard() { CWizard *pWizard = new CWizard; pWizard->AddPage (Page1); pWizard->AddPage (Page2); pWizard->AddPage (Page3); pWizard->DoWizard(); DELETE(pWizard); }


2006-9-21 23:58
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
profree
中级用户




积分 478
发帖 132
注册 2003-7-2
状态 离线
『第 104 楼』:  

非常感谢firstsail的热心帮助! 这几天一直在看winsail的资料,现有几个建议: 一、好像winsail没有驱动器列表,选项卡控件和数值增减控件,不知firstsail能否加入 二、本人以前也反映过firstsail的界面和控件的美观问题,firstsail能否再考虑 前久下载了chicago9的源代码(全部为源代码),里面有可执行文件,包括驱winsail没有动器列表控件,数值增减控件等控件,运行截图如下: 建议firstsail能取其长处,这个文件可以到网上下载,或需要的话我可以上传 [ Last edited by profree on 2006-9-23 at 02:32 ]


2006-9-23 00:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 105 楼』:  

WinSail V2.0内核已经重新上传。 (1) 演示程序所在的目录是“Sail3000” (2)“向导”类已经被“WinSail”内核支持。 (3)“向导”类的详细设计文档名为“界面非控件类_CWizard向导类详细设计.doc” (4)“向导”演示模块在“sail3000\Wizard2.cpp”文件 (5) 可在Win98,Windows2000,WindowsXP运行Sail3000\sail2000.exe可执行文件。 (6) 鼠标只能在“Win98”或“纯DOS”下显示。 所有用WinSail V2.0开发出来的界面,只要按下“F3”功能键,就自动会将当前窗口的画 面以256色的“a.bmp”文件形式记录下来,方便写说明书。


2006-9-23 06:04
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
<   <<   [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]  ... [20] >>   >
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: