在DOS下如何绘出Windows的对话框,如AfxMessageBox(...)之类的对话框?开发工具Borland c++ v3.1 for dos
在DOS下如何绘出Windows的对话框,如AfxMessageBox(...)之类的对话框?开发工具Borland c++ v3.1 for dos 问题点数:100、回复次数:7Top
1 楼wjyasd(金子鱼)回复于 2002-03-28 12:50:58 得分 0
换 VC 或着 C++ Build 吧!
Top
2 楼hcpp(简单的才是美的)回复于 2002-03-28 12:59:18 得分 10
不可能!MessageBox(...),是Windows的系统Api,dos无此能耐!
但你说的Dos如果是Windows 上的那个dos虚拟机,那倒可以,直接调MessageBox(...)即可!Top
3 楼wrongt(牛)回复于 2002-03-28 14:27:33 得分 0
但有人写出来啦!就是我不明白,你们可以给我考虑考虑吗?Top
4 楼hcpp(简单的才是美的)回复于 2002-03-28 14:54:05 得分 5
那他就得实现像Win3.1那种东西!自己实现,而非调用Dos的接口.Top
5 楼divaly(没事做的人)回复于 2002-03-28 21:11:28 得分 85
画线就行啦
#include <graphics.h>
#include <conin.h>
#include <stdio.h>
void button(int left,int top,int right,int bottom,char *string);
void main(void)
{
int driver=DETECT,mode=3;
initgraph(&driver,&mode,"");
Button(100,50,150,80,"OK");
getch();
closegraph();
}
void Button(int left,int top,int right,int bottom,char *string)
{
int x,y,strnum;
strnum=strlen(string)/2;
x=(right-left)/2-strnum;
y=(bottom-top)/2-3;
setfillstyle(SOLID_FILL,7);
bar(left,top,right,bottom); //画按钮表面
setcolor(WHITE);
line(left,top,right,top); //上边的白边线
line(left,top,left,bottom); //右边边的白边线
setcolor(DARKGRAY);
line(left-1,top-1,right+1,top-1); //上边的深灰线
line(left-1,top-1,left-1,bottom+1); //左边的深灰线
line(left,bottom,right,bottom); //下边的深灰线
line(right,top,right,bottom); //右边的深灰线
setcolor(BLACK);
line(left,bottom+1,right+1,bottom+1); //下边的黑色线
line(right+1,top,right+1,bottom+1); //右边的黑色线
outtextxy(x,y,string);
}
上面是个画按钮的程序。。。MESSAGEBOX和按钮差不多,
你只要加点油,添点醋就行啦,只要观察WINDOWS是有什么颜色的线画的,一样,什么都做得出,WINDOWS本身也是。。。Top
6 楼wrongt(牛)回复于 2002-03-30 08:26:50 得分 0
这样画图要很小心,是要讲究技术啊!Top
7 楼xrenwu(卖火柴的大男孩)回复于 2002-03-30 08:49:11 得分 0
不错!Top




