怎样使能够在主界面加入控件

buleideli 2008-02-16 09:15:48
单文档模式下怎样使在主界面加入控件。

对话框模式下很容易,资源里面只要拉控件贴上即可,但是单文档怎么弄。
...全文
114 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
buleideli 2008-02-17
  • 打赏
  • 举报
回复
谢谢大家,问题解决!!!!!!!!!!!!!!!!!!!!
eduyu 2008-02-17
  • 打赏
  • 举报
回复
windows下,所有子窗口的定位都是由父窗口来排版,
默认子窗口创建后大小是0位置在主窗口的客户区的左上角。
你需要响应WM_SIZE来排版所有子窗口。
datoucaicai 2008-02-17
  • 打赏
  • 举报
回复
已发,请查收
datoucaicai 2008-02-16
  • 打赏
  • 举报
回复
你可以新建一个SDI,在新建的向导步骤里,有一步是选择view类的基类的,你把View类的基类选为CFormView
这样生成的SDI的客户区就是一个FormView Dialog,资源视图中有这个Dialog的资源,你可以随便拖你的控件哈
buleideli 2008-02-16
  • 打赏
  • 举报
回复
我记得有人用过好像在对话框那直接新建一个无边缘的对话框,但是是在主界面显示的,然后可以在上面拖入控件的,就是忘了怎么弄。
buleideli 2008-02-16
  • 打赏
  • 举报
回复
datoucaicai 2008-02-16
  • 打赏
  • 举报
回复
SDI的view类继承CFormView好了
shelliu 2008-02-16
  • 打赏
  • 举报
回复
定义相应类型的控件变量,然后在OnCreate里调用变量的Create方法创建控件,需要注意的是需要将控件的WS_VISIBLE加上,否则不能看到创建的控件,而且要手动定义相关的消息响应。
buleideli 2008-02-16
  • 打赏
  • 举报
回复
想来也是,CFormView是继承CView的,肯定可以画图。

画图代码是在OnPaint啊,怎么画不了。

我邮箱:superbuleideli@sina.com.cn
datoucaicai 2008-02-16
  • 打赏
  • 举报
回复
你的画图部分最好放在OnPaint或OnDraw中,简单做了个例程,需要的话,留个邮箱吧

//to z_k515:CFormView上当然也是可以画图的
charlesfang 2008-02-16
  • 打赏
  • 举报
回复
可以自己扩展类然后绘制控件的窗体
buleideli 2008-02-16
  • 打赏
  • 举报
回复
怎么拆分窗口呢,什么是无模式状态?请说详细点,谢谢。

如果能像对话框那样就好了,在同一窗口放控件和绘图操作。
z_k515 2008-02-16
  • 打赏
  • 举报
回复
class CGameView : public CFormView是不能画的,你必须更改其继承类为class CGameView : public CView,因为CFormView是从CView中继承来得.
建议有二:1,采用切分窗口,一个窗口利用class CGameView : public CFormView来实现控件的拖拉,另一个窗口采用class CGameView : public CView,来实现图形的重画.2,不要利用MFC自动生成class CGameView : public CFormView,而是在编写程序的时候在无模式状态下用程序加载.
buleideli 2008-02-16
  • 打赏
  • 举报
回复
嗯,谢谢datoucaicai 。

现在又有问题,我想在这个主窗口上一边是加上控件,另一边用来画图,现在怎么不能画图了。
ps:画图的那函数还是原来的class CGameView : public CView里的函数,现在只是变成class CGameView : public CFormView里的函数,怎么画不了。

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧