MFC的基本对话框怎么画图?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC的基本对话框怎么画图?相关的知识,希望对你有一定的参考价值。

如图,想在MFC基本对话框的固定区域内画图,需要想Excel画图那种,可以设置x轴和y轴。需要实时画图,连接了设备,测一个数据画一个点。如果不能在基本对话框里面画,点击MFC按钮弹出一个界面画图也行。求大佬指点!

最后两个参数其实很好理解: from,to 从到哪里到哪里。from就表示从数据库中的值,to到你对应的包含布局文件中对应组件id; 在许多时候需要将数据库表中的数据显示在ListView、Gallery等组件中。虽然可以直接使用Adapter对象处理,但工作量很大。为此,android SDK提供了一个专用于数据绑定的Adapter类:SimpleCursorAdapter。 public SimpleCursorAdapter(Context context,int layout,Cursor c,String[] from,int[] to); 这个是它的构造方法; SimpleCursorAdapter类构造方法的第四个参数表示返回Cursor对象中的字段名,第五个参数表示要将该字段的值赋给那个组件。该组件在第二个参数中指定的布局文件中定义。 //查询数据 Cursor cursor = dbService.query("select * from t_test", null); 绑定数据 SimpleCursorAdapter simpleCursorAdapter = new SimpleCursorAdapter (this,android.R.layout.simple_expandable_list_item_1,cursor,new String[]"name",new int[]android.R.id.text1); setListAdapter(simpleCursorAdapter); //将NAME列的数据一次映射到布局文件的id为text1的组件上。 注意:在绑定数据时,Cursor对象返回的记录集中必须包含一个叫"_id"的字段,否则将无法完成数据绑定。也就是说SQL语句不能是select name from t_contacts.如果在数据表中没有"_id"字段,可以采用其他方法来处理。 以上例子的表为: CREATE TABLE [t_test]([_id]AUTOINC, [name]VARCHAR2(20) NOT NULL CONFLICT FAIL, CONSTRAINT[sqlite_autoindex_te_test_1]PRIMARY KEY([_id])); 参考技术A .首先创建一个单文档MFC应用程序 2.在“资源视图”下找到Dialog菜单,右击,单击“插入Dialog“, 参考技术B OnPaint() 里面画也行追问

能介绍下这个函数怎么用吗?能在固定区域里面画图嘛?

MFC 怎么使对话框充满窗口

参考技术A 对话框 一般都是 用 visual studio 自带的 制作对话框的工具手工 画 的。如果你画得 充满窗口,显示的时候就可充满窗口。
改变资源里的 窗口尺寸, 你也可以 用文本编辑器 编辑 程序名.rc 文件,修改数值,例如:
IDD_MY_PROG_DIALOG DIALOGEX 0, 0, 320, 253
改成 IDD_MY_PROG_DIALOG DIALOGEX 0, 0, 2048, 1600

可以尝试 改变资源里的 窗口 风格,设 WS_MAXIMIZE (我没试过能变多大,能否FullScreen)
例如:
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_MAXIMIZE

重新编译产生 EXE本回答被提问者采纳
参考技术B 写代码做的,想用异形窗口就得自己写代码改。自己在网上搜不规则窗口的示例程序吧 参考技术C 对话框属性->样式,勾上最大化框。
再在类向导里,选择WM_SIZE,然后Edit Code.
VC++全屏时,根据对话框大小调整控件大小
1、在对话框类中加入成员变量CRect m_rect;用于保存对话框大小变化前的大小;
2、在对话框的OnInitDialog()函数中获取对话框创建时的大小:GetClientRect(&m_rect);
3、在WM_SIZE的响应函数OnSize()中加入以下代码:
C/C++ code
CWnd *pWnd;
pWnd = GetDlgItem(IDC_LIST); //获取控件句柄
if(pWnd && nType!=1)//判断是否为空,因为对话框创建时会调用此函数,而当时控件还未创建

CRect rect; //获取控件变化前大小
pWnd->GetWindowRect(&rect);
ScreenToClient(&rect);//将控件大小转换为在对话框中的区域坐标
// cx/m_rect.Width()为对话框在横向的变化比例
rect.left=rect.left*cx/m_rect.Width();/////调整控件大小
rect.right=rect.right*cx/m_rect.Width();
rect.top=rect.top*cy/m_rect.Height();
rect.bottom=rect.bottom*cy/m_rect.Height();
pWnd->MoveWindow(rect);//设置控件大小

GetClientRect(&m_rect);//将变化后的对话框大小设为旧大小

以上是关于MFC的基本对话框怎么画图?的主要内容,如果未能解决你的问题,请参考以下文章

在MFC对话框程序中打开AUTOCAD图纸

如何用C++6.0中的MFC 画图?最简单的线就可以

MFC中TAB控件使用问题

急急急!mfc中怎么在基于对话框的主界面中显示proppage属性页?最好有例子

vs2010基于对话框的mfc工程怎样实现点击按钮更新对话框的部分内容

NX二次开发-BlockUI对话框嵌套MFC对话框制作进度条