⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_54663.htm

📁 vc
💻 HTM
字号:
<p>
序号:54663 发表者:ceyi 发表日期:2003-09-29 20:30:40
<br>主题:怎样得到creat的参数?
<br>内容:1.具体的说,我想知道如何得到CComboBox 的创建函数<BR>BOOL Create( DWORD dwStyle, const RECT&amp; rect, CWnd* pParentWnd, UINT nID );<BR>中的const RECT&amp; rect和CWnd* pParentWnd。<BR>2.为什么有些MFC编程的例子中根本就不调用creat,还能直接进行addstring之类的操作?<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:hurtmanzc 回复日期:2003-09-29 20:43:35
<br>内容:<BR>CComboBox的成员函数Create负责创建组合框,该函数的说明如下:<BR><BR>BOOL Create( DWORD dwStyle, const RECT&amp; rect, CWnd* pParentWnd, UINT nID );<BR><BR> <BR><BR>参数dwStyle指定了组合框控件的风格,如表6.10所示,dwStyle可以是这些风格的组合.rect说明的是列表框组件下拉后组合框的位置和尺寸.pParentWnd指向父窗口,该参数不能为NULL。nID则说明了控件的ID。如果创建成功,该函数返回TRUE,否则返回FALSE.<BR><BR>提示:在用Create函数创建组合框时,参数rect说明的是包括列表框组件在内的组合框的位置和尺寸,而不是列表框组件隐藏时的编辑框组件尺寸.要设置编辑框组件的高度,可以调用成员函数SetItemHeight(-1,cyItemHeight),其中参数cyItemHeight指定了编辑框的高度(以像素为单位). <BR><BR>组合框的风格<BR><BR>控件风格及含义:<BR> <BR>CBS_AUTOHSCROLL<BR> 使编辑框组件具有水平滚动的风格.<BR> <BR>CBS_DROPDOWN<BR> 指定一个下拉式组合框.<BR> <BR>CBS_DROPDOWNLIST<BR> 指定一个下拉列表式组合框.<BR> <BR>CBS_HASSTRINGS<BR> 指定一个含有字符串的自绘式组合框.<BR> <BR>CBS_OEMCONVERT<BR> 使编辑框组件中的正文可以在ANSI字符集和OEM字符集之间相互转换。这在编辑框中包含文件名时是很有用的。<BR> <BR>CBS_OWNERDRAWFIXED<BR> 指定自绘式组合框,即由父窗口负责绘制列表框的内容,并且列表项有相同的高度.<BR> <BR>CBS_OWNERDRAWVARIABLE<BR> 指定自绘式组合框,并且列表项有不同的高度.<BR> <BR>CBS_SIIMPLE<BR> 指定一个简易式组合框.<BR> <BR>CBS_SORT<BR> 自动对列表框组件中的项进行排序.<BR> <BR>CBS_DISABLENOSCROLL<BR> 使列表框在不需要滚动时显示一个禁止的垂直滚动条.<BR> <BR>CBS_NOINTEGRALHEIGHT<BR> 组合框的尺寸由应用程序而不是Windows指定.通常,由Windows指定尺寸会使列表项的某些部分隐藏起来.<BR> <BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:ceyi 回复日期:2003-09-29 20:55:55
<br>内容:我想知道,如何给出rect和pParentWnd,我并不知道它们是什么。要调用什么函数得到rect的尺寸?<BR>而且还有问题2。麻烦了。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:hurtmanzc 回复日期:2003-09-29 21:34:07
<br>内容:pParentWnd就是你想在其上创建控件的对象的指针<BR>rect是rect说明的是列表框组件下拉后组合框的位置和尺寸<BR>上面不是说的很清楚吗!<BR>下面这个离子在工具条创建了一个组合框,参考一下:<BR>http://www.yesky.com/SoftChannel/72342371928702976/20030522/1702550.shtml<BR><BR><BR>问题2:你所说应该是一个对话框例子,在摸板中加一个组合框控件,然后用向导为其加入一个control型变量myComboBox,然后就可以这样用:<BR>myComboBox.addstring(&#34;1234&#34;);<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:ceyi 回复日期:2003-09-29 21:56:52
<br>内容:谢谢你提供的示例。我还想请教:<BR>示例中用了GetItemRect()获得rect的位置,我是在CPropertyPage中建combobox,而CPropertyPage似乎没有GetItemRect(),用什么代替它呢?<BR>是不是除了在对话框中,其它都要先调用creat?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:hurtmanzc 回复日期:2003-09-29 22:13:07
<br>内容:是不是除了在对话框中,其它都要先调用creat? 是!<BR>类CPropertyPage 是从CDiaglog中派生出来的,具有Diaglog的基本性质,应该能用GetItemRect()。<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:ceyi 回复日期:2003-09-29 22:49:08
<br>内容:这么说我必须用creat。<BR>但CDiaglog类似乎也没有GetItemRect()?(再往上就是Cwnd了...)<BR>还想问,“pParentWnd指向父窗口”,那CPropertyPage是否就是父窗口?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:hurtmanzc 回复日期:2003-09-29 23:05:29
<br>内容:那CPropertyPage就是父窗口!<BR>CPropertyPage可以用摸板,所以可以在摸板上直接加入控件。<BR>准确的说是没有摸板的情况下必须用creat来创建一个控件。<BR><BR>实际上你的问题是:如何在CPropertyPage页中加入组合框控件?<BR>看这个例子:<BR>http://jsjgc.hncj.edu.cn/article/program/vc0012.htm<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:ceyi 回复日期:2003-09-30 11:00:22
<br>内容:谢谢。从你提供的地址那儿找到很多有用的资料。<BR>我试着不用create,在调用SubclassDlgItem后也能对控件进行正常操作(不加SubclassDlgItem则运行时会出错,why?????),这是否说明在摸板上直接加入控件,就不用调用create,程序在某个时刻自动创建显示我所定义的控件?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -