mfc相关问题...
用MFC实现各工具像这样的功能:自己写个单独界面类(界面类中有大象猴子等之类的),用以实现这样的工具:工具通过读取文本(文本为:一只大象一只猴子),在工具界面上显示一只大...
用MFC实现各工具像这样的功能:
自己写个单独界面类(界面类中有大象 猴子等之类的),用以实现这样的工具:工具通过读取文本(文本为:一只大象 一只猴子),在工具界面上显示一只大象和一只猴子。问题是这个界面类怎么实现,能过为用MFC实现的工具调用,且动态的显示出来?
不要管这个工具怎么样了解到文本信息的,只回答如何写这个类才能的在MFC工具中动态的显示大象和猴子,给个大概的思想方向,鄙视复制粘贴的!
可以的话 追加50分
谢谢各位的回答!
一楼:要写个界面类啊,然后给MFC调用 动态的 文本说画一只猴子 那就画一只猴子;画二只猴子 那就画二只猴子(猴子怎么用什么表示的无所谓,用一个圈也可以)。关键是这个界面类怎么写,其他的都不是问题。当然这个界面类可以从MFC类库中继承。
二楼:你的想法里 并没有用到界面类啊。这个界面类实现后,还要可以为别人所用的啊。
四楼:呵呵,文本解析是日后的工作 谢谢你提供的思路了。
五楼:同学,你给我提供了个好思路。之前我还想用DLL还实现的,看来现在不用那么费劲了。 展开
自己写个单独界面类(界面类中有大象 猴子等之类的),用以实现这样的工具:工具通过读取文本(文本为:一只大象 一只猴子),在工具界面上显示一只大象和一只猴子。问题是这个界面类怎么实现,能过为用MFC实现的工具调用,且动态的显示出来?
不要管这个工具怎么样了解到文本信息的,只回答如何写这个类才能的在MFC工具中动态的显示大象和猴子,给个大概的思想方向,鄙视复制粘贴的!
可以的话 追加50分
谢谢各位的回答!
一楼:要写个界面类啊,然后给MFC调用 动态的 文本说画一只猴子 那就画一只猴子;画二只猴子 那就画二只猴子(猴子怎么用什么表示的无所谓,用一个圈也可以)。关键是这个界面类怎么写,其他的都不是问题。当然这个界面类可以从MFC类库中继承。
二楼:你的想法里 并没有用到界面类啊。这个界面类实现后,还要可以为别人所用的啊。
四楼:呵呵,文本解析是日后的工作 谢谢你提供的思路了。
五楼:同学,你给我提供了个好思路。之前我还想用DLL还实现的,看来现在不用那么费劲了。 展开
5个回答
展开全部
//定义基类
class Animal
{
public:
Animal(CDC* dc, const CPoint& pos) : dc_(dc), pos_(pos){}
virtual ~Animal(){}
virtual void show(){}
protected:
CDC* dc_; //设备环境
CPoint pos_;//绘制的位置,x,y方向的坐标.
};
//大象类
class Elephant : public Animal
{
public:
Elephant(const CDC& dc, const CPoint& pos) : Animal(dc, pos){}
virtual ~ElePhant(){}
virtual void show()
{
CString str = "大象";
CRect rect(pos_, pos_.x + 100, pos_.y + 30);
dc_.drawText(rect, str, 0);//最后一个参数见MSDN.
}
};
//其他动物如法炮制.
在OnPaint或OnDraw中这样调用.
XXX::OnPaint()
{
CPaintDC dc(this);
Animal* elephant = new Elephant(dc, CPoint(0, 0));
elephant->show();
};
不知道你是不是说的这种办法.
class Animal
{
public:
Animal(CDC* dc, const CPoint& pos) : dc_(dc), pos_(pos){}
virtual ~Animal(){}
virtual void show(){}
protected:
CDC* dc_; //设备环境
CPoint pos_;//绘制的位置,x,y方向的坐标.
};
//大象类
class Elephant : public Animal
{
public:
Elephant(const CDC& dc, const CPoint& pos) : Animal(dc, pos){}
virtual ~ElePhant(){}
virtual void show()
{
CString str = "大象";
CRect rect(pos_, pos_.x + 100, pos_.y + 30);
dc_.drawText(rect, str, 0);//最后一个参数见MSDN.
}
};
//其他动物如法炮制.
在OnPaint或OnDraw中这样调用.
XXX::OnPaint()
{
CPaintDC dc(this);
Animal* elephant = new Elephant(dc, CPoint(0, 0));
elephant->show();
};
不知道你是不是说的这种办法.
展开全部
你这个应该考虑设计一个XML配置文件,例如
<动物 名称="大象" 类型="1" 数量="1"/>
<动物 名称="猴子" 类型="2" 数量="1"/>
根据类型来确定你要画什么动物,根据名称来在界面上写字,数量确定你要画多少只。
不建议采用普通文本文件,那样解析起来太困难了。
而显示这些动物的画可以使用图片,如果你做游戏的话,那么应该使用DriectX来绘图,先编辑动物的矩阵,然后使用DriectX绘制。
<动物 名称="大象" 类型="1" 数量="1"/>
<动物 名称="猴子" 类型="2" 数量="1"/>
根据类型来确定你要画什么动物,根据名称来在界面上写字,数量确定你要画多少只。
不建议采用普通文本文件,那样解析起来太困难了。
而显示这些动物的画可以使用图片,如果你做游戏的话,那么应该使用DriectX来绘图,先编辑动物的矩阵,然后使用DriectX绘制。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只要在把文本为:”一只大象 一只猴子“画出来就行了啊;
你可以在OnDraw()函数里实现;也可以在OnPaint()函数里实现;
只要你写个相应的消息相应函数,在函数中写个Invalid(),这个函数的作用就是去执行重绘,就会调用OnPaint,OnDraw函数的
你可以在OnDraw()函数里实现;也可以在OnPaint()函数里实现;
只要你写个相应的消息相应函数,在函数中写个Invalid(),这个函数的作用就是去执行重绘,就会调用OnPaint,OnDraw函数的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-03-04
展开全部
既然你这么自信的描述了问题
|黑 信| 那我就谈谈我的看法吧:
|吧 息| 我说的不一定能帮你解决问题,但却是我看到你的问题后的一点想法
|安 来| 我觉得可以这样来整:
|全 源| 你说的是根据文本中的文字来进行相应的显示,那么这个跟你用鼠标点击
|网 :| 某个按钮,然后相应的显示一个东西有啥区别呢?没有。
那么,你就可以根据你读取到的内容进行相应的显示啊~那么你是不知道怎么读取文本还是不知道怎么进行显示?还是说不知道怎么样根据读取到的文本进行相应的显示?
|黑 信| 那我就谈谈我的看法吧:
|吧 息| 我说的不一定能帮你解决问题,但却是我看到你的问题后的一点想法
|安 来| 我觉得可以这样来整:
|全 源| 你说的是根据文本中的文字来进行相应的显示,那么这个跟你用鼠标点击
|网 :| 某个按钮,然后相应的显示一个东西有啥区别呢?没有。
那么,你就可以根据你读取到的内容进行相应的显示啊~那么你是不知道怎么读取文本还是不知道怎么进行显示?还是说不知道怎么样根据读取到的文本进行相应的显示?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
OnDraw 里取得dc 自己画呗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询