中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-14 23:18
47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,268 会员排行
DOS开发编程 & 发展交流 (开发室) » DOS的界面开发终结者
可打印版本  98,385 / 290
第61楼 firstsail 发表于 2005-11-01 11:19
高级用户 发帖 295 积分 668 来自 广东深圳
WinSail的下载地址
网址:http://www.firstsail.b2b.cn
位置:
首页的左上角->->->->

免费下载的编程库是BC31编译器下使用的80386以上CPU、带浮点处理器的开发包!
第62楼 jpzsj 发表于 2005-11-02 19:30
初级用户 发帖 26 积分 43
这个编程库确实很好,可惜就是不支持真彩色,只支持256,如果能用djgpp+allegro编写,支持真彩色就好了
第63楼 Kinglion 发表于 2005-11-02 23:18
铂金会员 发帖 1,924 积分 5,798 来自 金獅電腦軟體工作室
支持原创作品!
第64楼 firstsail 发表于 2005-11-03 12:42
高级用户 发帖 295 积分 668 来自 广东深圳
WinSail V2.0目前没有支持真彩色的计划!
目前的WinSail保存窗口背景的默认扩展内存空间为2M字节.
当然可以修改Config.Sys中配置的没有公开的“键值”来增加空间。

在16色(4位)下
640 * 480 -> 154K字节,可同时开12个需保存窗口背景的全窗口
800 * 600 -> 240K字节,可同时开8个需保存窗口背景的全窗口
1024 * 768 -> 393K字节,可同时开4个需保存窗口背景的全窗口

在256色(8位)下
640 * 480 -> 308K字节,可同时开6个需保存窗口背景的全窗口
800 * 600 -> 480K字节,可同时开4个需保存窗口背景的全窗口
1024 * 768 -> 786K字节,可同时开2个需保存窗口背景的全窗口

在65536色(16位)下:
640 * 480 -> 615K字节,可同时开6个需保存窗口背景的全窗口
800 * 600 -> 960K字节,可同时开4个需保存窗口背景的全窗口
1024 * 768 -> 1572K字节,可同时开1个需保存窗口背景的全窗口

在真彩色(24位)下:
640 * 480 -> 924K字节,可同时开1个需保存窗口背景的全窗口
800 * 600 -> 1440K字节,可同时开1个需保存窗口背景的全窗口
1024 * 768 -> 2304K字节,不能开需保存窗口背景的全窗口

基于WinSail V2.0开发的目的是用于工业用途,许许多多的目标主板
的内存和硬盘空间有限,特别是在PC104主板中,故WinSail目前没有支持
真彩色的计划!
第65楼 jpzsj 发表于 2005-11-03 14:25
初级用户 发帖 26 积分 43
太可惜了, 如果做成通用的、 直接真彩色不是更好吗?
第66楼 bbsbot 发表于 2005-12-01 08:58
初级用户 发帖 6 积分 117
很好的dos开发工具包,免费的?
那个在线订购是怎么回事
第67楼 Neat 发表于 2005-12-01 20:27
初级用户 发帖 16 积分 32
带源码吗?
第68楼 zhgwbzhd 发表于 2005-12-04 23:29
高级用户 发帖 187 积分 506
支持一下
第69楼 kdlipm 发表于 2005-12-05 00:35
初级用户 发帖 16 积分 31
老大太强了,值得学习!·!·
第70楼 m168 发表于 2005-12-14 01:05
初级用户 发帖 17 积分 34
向老大致敬!!谢谢!
第71楼 zhgwbzhd 发表于 2005-12-20 11:44
高级用户 发帖 187 积分 506
俺怎么用不了呢?按照说明,把bc环境配置了一下。把include2拷贝过去。
建立一个工程,把那两个库增加进去。自己建立一个main.c
。按照说明把最简单的代码写进去。可是编译的时候报很多错??
第72楼 firstsail 发表于 2005-12-20 12:36
高级用户 发帖 295 积分 668 来自 广东深圳
在include2目录中有一个Sail.Prj文件,用它做工程文件吧!
//在include2目录中有一个Sail.Prj文件,用它做工程文件吧!

//下面是例子
include <Symbol.h>
#include <MyFrame.h>


//Stack's Size
unsigned int _stklen = 50u * 1024u;//堆栈的尺寸

//Keyboard's Callback Function For All Default Window
int TransrateKey(CObject* pCurObj)//所有窗口默认虚拟键盘回调函数
{
return(0);
}

void far VccFunction(CObject* pCurObj)
{
//Create a Dialog On the Center of Desktop
CDialog* pDialog = new CDialog;//分配实例
pDialog->CreateWindow(0, 0, 447, 364, "单选按钮演示");//建立窗口
pDialog->Center();//窗口对中

//Register Callback Function for Window
pDialog->SetTimeFc(NULL);//注册定时器回调函数
pDialog->SetDrawFc(NULL);//注册画图回调函数
pDialog->SetHelpFc(NULL);//注册帮助回调函数
pDialog->SetKeyboardFc(NULL);//注册虚拟键盘回调函数

//Create Close's Button Control
CCloseButton* pCloseButton = new CCloseButton(pDialog);//分配和建立关闭按钮

//Create a Button Control
CButton* pButton1 = new CButton(pDialog);
pButton1->CreateObject(225, 141, 192, 24, "确定(\x3\E\x3)");
pButton1->SetShortcutKey(VK_ALT_E);
pButton1->SetFc(ClickEnterButton);
pButton1->SetID(BUTTONBASE + 1 - 1);

//Create a Button Control
CButton* pButton2 = new CButton(pDialog);
pButton2->CreateObject(223, 183, 192, 24, "取消(\x3\C\x3)");
pButton2->SetShortcutKey(VK_ALT_C);
pButton2->SetFc(ClickCancelButton);
pButton2->SetID(BUTTONBASE + 2 - 1);

//Create Group Control
CStatic* pGroup1 = new CStatic(pDialog);
pGroup1->CreateObject(10, 32, 204, 94, "星期");
pGroup1->SetID(GROUPBASE + 1 - 1);

//Create Radio Control
CRadio* pRadio1 = new CRadio(pDialog);
pRadio1->CreateObject(22, 53, 73, 24, "星期一");
pRadio1->SetStatic(TRUE);
pRadio1->SetRadio(TRUE);
pRadio1->SetID(RADIOBASE + 1 - 1);

//Create Radio Control
CRadio* pRadio2 = new CRadio(pDialog);
pRadio2->CreateObject(22, 76, 73, 24, "星期二");
pRadio2->SetID(RADIOBASE + 2 - 1);

//Create Radio Control
CRadio* pRadio3 = new CRadio(pDialog);
pRadio3->CreateObject(22, 98, 73, 24, "星期三");
pRadio3->SetID(RADIOBASE + 3 - 1);

//Create Group Control
CStatic* pGroup2 = new CStatic(pDialog);
pGroup2->CreateObject(226, 32, 204, 94, "性别");
pGroup2->SetID(GROUPBASE + 2 - 1);

//Create Radio Control
CRadio* pRadio4 = new CRadio(pDialog);
pRadio4->CreateObject(240, 53, 57, 24, "男性");
pRadio4->SetStatic(TRUE);
pRadio4->SetRadio(TRUE);
pRadio4->SetID(RADIOBASE + 4 - 1);

//Create Radio Control
CRadio* pRadio5 = new CRadio(pDialog);
pRadio5->CreateObject(240, 83, 57, 24, "女性");
pRadio5->SetID(RADIOBASE + 5 - 1);

//Create Check Control
CRadio* pCheck1 = new CRadio(pDialog);
pCheck1->CreateObject(22, 154, 57, 24, "读书");
pCheck1->SetBox(TRUE);
pCheck1->SetID(CHECKBASE + 1 - 1);
pCheck1->SetID(CHECKBASE + 1 - 1);

//Create Check Control
CRadio* pCheck2 = new CRadio(pDialog);
pCheck2->CreateObject(22, 180, 57, 24, "跑步");
pCheck2->SetBox(TRUE);
pCheck2->SetID(CHECKBASE + 2 - 1);
pCheck2->SetID(CHECKBASE + 2 - 1);

//Create Check Control
CRadio* pCheck3 = new CRadio(pDialog);
pCheck3->CreateObject(22, 202, 73, 24, "打足球");
pCheck3->SetBox(TRUE);
pCheck3->SetID(CHECKBASE + 3 - 1);
pCheck3->SetID(CHECKBASE + 3 - 1);

//Create Group Control
CStatic* pGroup3 = new CStatic(pDialog);
pGroup3->CreateObject(10, 133, 204, 96, "星期");
pGroup3->SetID(GROUPBASE + 3 - 1);

//Create Edit Control
CEdit* pEdit1 = new CEdit(pDialog);
pEdit1->CreateObject(97, 153, 106, 21, NULL);
pEdit1->SetID(EDITBASE + 1 - 1);

//Create Edit Control
CEdit* pEdit2 = new CEdit(pDialog);
pEdit2->CreateObject(99, 180, 106, 21, NULL);
pEdit2->SetID(EDITBASE + 2 - 1);


//Show Window
pDialog->ShowWindow();//显示窗口

//go into Message Loop
pDialog->DoModal();//进入窗口消息循环

//Destroy Window
delete pDialog;//删除对话框


return;

}

int main(int argc, char** argv)
{

//Initlize Sysem Kernel
if (!::InitSystem(argc, argv))//初始化系统内核
{
::CloseSystem();//关闭系统内核
printf("\nInit System Error!");
return(0);
}


//Callback Function
::VccFunction(NULL);


//Close Sysem Kernel
::CloseSystem();//关闭系统内核

return(1);

}
第73楼 zhgwbzhd 发表于 2005-12-20 14:49
高级用户 发帖 187 积分 506
报错呀!我用的是msdos7呀。
//下面是例子
include <Symbol.h>
#include <MyFrame.h>


//Stack's Size
unsigned int _stklen = 50u * 1024u;//堆栈的尺寸

//Keyboard's Callback Function For All Default Window
int TransrateKey(CObject* pCurObj)//所有窗口默认虚拟键盘回调函数
{
return(0);
}
int main(int argc, char** argv)
{

//Initlize Sysem Kernel
if (!::InitSystem(argc, argv))//初始化系统内核
{
::CloseSystem();//关闭系统内核
printf("\nInit System Error!");
return(0);
}


//
printf("\nhahahahahahahahhahah\n");


//Close Sysem Kernel
::CloseSystem();//关闭系统内核

return(1);

}
第74楼 zhgwbzhd 发表于 2005-12-20 14:58
高级用户 发帖 187 积分 506
报错内容是:
上面是一些地址
下面让我[T]终止,可能要重新启动计算机,如果系统不能使用的话.....
第75楼 firstsail 发表于 2005-12-20 18:30
高级用户 发帖 295 积分 668 来自 广东深圳
对于BC31来说,如果语法错误太多,BC31会崩溃!

include <Symbol.h> //这里的语法是有错的,崩溃在这里
#include <MyFrame.h>
//-----------------------------------------

#include <Symbol.h> //应该这样
#include <MyFrame.h>


//==========================================
//下面是例子
#include <Symbol.h>
#include <MyFrame.h>


//Stack's Size
unsigned int _stklen = 50u * 1024u;//堆栈的尺寸

//Keyboard's Callback Function For All Default Window
int TransrateKey(CObject* pCurObj)//所有窗口默认虚拟键盘回调函数
{
return(0);
}

void far VccFunction(CObject* pCurObj)
{
//Create a Dialog On the Center of Desktop
CDialog* pDialog = new CDialog;//分配实例
pDialog->CreateWindow(0, 0, 447, 364, "单选按钮演示");//建立窗口
pDialog->Center();//窗口对中

//Register Callback Function for Window
pDialog->SetTimeFc(NULL);//注册定时器回调函数
pDialog->SetDrawFc(NULL);//注册画图回调函数
pDialog->SetHelpFc(NULL);//注册帮助回调函数
pDialog->SetKeyboardFc(NULL);//注册虚拟键盘回调函数

//Create Close's Button Control
CCloseButton* pCloseButton = new CCloseButton(pDialog);//分配和建立关闭按钮

//Create a Button Control
CButton* pButton1 = new CButton(pDialog);
pButton1->CreateObject(225, 141, 192, 24, "确定(\x3\E\x3)");
pButton1->SetShortcutKey(VK_ALT_E);
pButton1->SetFc(ClickEnterButton);
pButton1->SetID(BUTTONBASE + 1 - 1);

//Create a Button Control
CButton* pButton2 = new CButton(pDialog);
pButton2->CreateObject(223, 183, 192, 24, "取消(\x3\C\x3)");
pButton2->SetShortcutKey(VK_ALT_C);
pButton2->SetFc(ClickCancelButton);
pButton2->SetID(BUTTONBASE + 2 - 1);

//Create Group Control
CStatic* pGroup1 = new CStatic(pDialog);
pGroup1->CreateObject(10, 32, 204, 94, "星期");
pGroup1->SetID(GROUPBASE + 1 - 1);

//Create Radio Control
CRadio* pRadio1 = new CRadio(pDialog);
pRadio1->CreateObject(22, 53, 73, 24, "星期一");
pRadio1->SetStatic(TRUE);
pRadio1->SetRadio(TRUE);
pRadio1->SetID(RADIOBASE + 1 - 1);

//Create Radio Control
CRadio* pRadio2 = new CRadio(pDialog);
pRadio2->CreateObject(22, 76, 73, 24, "星期二");
pRadio2->SetID(RADIOBASE + 2 - 1);

//Create Radio Control
CRadio* pRadio3 = new CRadio(pDialog);
pRadio3->CreateObject(22, 98, 73, 24, "星期三");
pRadio3->SetID(RADIOBASE + 3 - 1);

//Create Group Control
CStatic* pGroup2 = new CStatic(pDialog);
pGroup2->CreateObject(226, 32, 204, 94, "性别");
pGroup2->SetID(GROUPBASE + 2 - 1);

//Create Radio Control
CRadio* pRadio4 = new CRadio(pDialog);
pRadio4->CreateObject(240, 53, 57, 24, "男性");
pRadio4->SetStatic(TRUE);
pRadio4->SetRadio(TRUE);
pRadio4->SetID(RADIOBASE + 4 - 1);

//Create Radio Control
CRadio* pRadio5 = new CRadio(pDialog);
pRadio5->CreateObject(240, 83, 57, 24, "女性");
pRadio5->SetID(RADIOBASE + 5 - 1);

//Create Check Control
CRadio* pCheck1 = new CRadio(pDialog);
pCheck1->CreateObject(22, 154, 57, 24, "读书");
pCheck1->SetBox(TRUE);
pCheck1->SetID(CHECKBASE + 1 - 1);
pCheck1->SetID(CHECKBASE + 1 - 1);

//Create Check Control
CRadio* pCheck2 = new CRadio(pDialog);
pCheck2->CreateObject(22, 180, 57, 24, "跑步");
pCheck2->SetBox(TRUE);
pCheck2->SetID(CHECKBASE + 2 - 1);
pCheck2->SetID(CHECKBASE + 2 - 1);

//Create Check Control
CRadio* pCheck3 = new CRadio(pDialog);
pCheck3->CreateObject(22, 202, 73, 24, "打足球");
pCheck3->SetBox(TRUE);
pCheck3->SetID(CHECKBASE + 3 - 1);
pCheck3->SetID(CHECKBASE + 3 - 1);

//Create Group Control
CStatic* pGroup3 = new CStatic(pDialog);
pGroup3->CreateObject(10, 133, 204, 96, "星期");
pGroup3->SetID(GROUPBASE + 3 - 1);

//Create Edit Control
CEdit* pEdit1 = new CEdit(pDialog);
pEdit1->CreateObject(97, 153, 106, 21, NULL);
pEdit1->SetID(EDITBASE + 1 - 1);

//Create Edit Control
CEdit* pEdit2 = new CEdit(pDialog);
pEdit2->CreateObject(99, 180, 106, 21, NULL);
pEdit2->SetID(EDITBASE + 2 - 1);


//Show Window
pDialog->ShowWindow();//显示窗口

//go into Message Loop
pDialog->DoModal();//进入窗口消息循环

//Destroy Window
delete pDialog;//删除对话框


return;

}

int main(int argc, char** argv)
{

//Initlize Sysem Kernel
if (!::InitSystem(argc, argv))//初始化系统内核
{
::CloseSystem();//关闭系统内核
printf("\nInit System Error!");
return(0);
}


//Callback Function
::VccFunction(NULL);


//Close Sysem Kernel
::CloseSystem();//关闭系统内核

return(1);

}
上一页  12 3 4 5 6 7 820  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023