45fan.com - 路饭网

搜索: 您的位置主页 > 电脑频道 > 电脑教程 > 阅读资讯:如何使用WINXGUI实现对话框布局控制Splitter与Pane?

如何使用WINXGUI实现对话框布局控制Splitter与Pane?

2016-09-01 18:53:02 来源:www.45fan.com 【

如何使用WINXGUI实现对话框布局控制Splitter与Pane?

在DELPHI和.NET的可视化设计中,利用Splitter和Panel可以实现控件的分组和布局控制,在WTL中提供了SplitterWindow对于对话框程序非常方便,而提供的CPaneContainer只能容纳一个控件,不能达到完全可视化的目的.
WINXGUI提供了嵌入对话框设计的方式,本文的PANE控制就是基于WINXGUI实现的.实际上在WTL中也可以实现类似控制,但是用WINXGUI实现起来尤其方便,并且WINXGUI本身支持可视化设计.参见http://winxgui.com

利用WINGUI的子类化技术,可以实现PANE控制,利用类似WINGUI设计的宏可以简化设计,利用WTL的SplitterWindow可以实现窗口分割控制.这样通过Spliter和Pane可以在VS6.0的对话框上直接进行设计,其中Splitter控制可以使用StaticText控件占位生成或直接动态生成,而Pane可以直接子类化StaticText控件.

一个应用例子: 需要使用WINXGUI.

代码下载请见http://www.winxgui.com/forum/viewthread.php?tid=4&extra=page%3D1

如何使用WINXGUI实现对话框布局控制Splitter与Pane?

如何使用WINXGUI实现对话框布局控制Splitter与Pane?WTL::CHorSplitterWindowExm_left;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
intOnInitDialog(HWNDhWnd,HWNDwParam)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?
{
如何使用WINXGUI实现对话框布局控制Splitter与Pane?CenterWindow();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?m_left.CreateFromID(m_hWnd,IDC_LEFT);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?m_left.SetSplitterPos(
100);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANE_BEGIN(IDC_PANE2)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEITEM(IDC_MY_EDIT,PANE_SIZE_X
|PANE_SIZE_Y)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANE_END();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANE_BEGIN(IDC_PANE1)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEACCEL(IDR_ACCELERATOR)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEITEM(IDC_HELP_BTN,PANE_MOVE_X)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEITEM(IDC_HIDE_BTN,PANE_MOVE_X)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANE_END();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANE_BEGIN(IDC_PANE3)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEACCEL(IDR_ACCELERATOR)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEITEM(IDOK,
0)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEITEM(IDCANCEL,
0)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEITEM(IDC_ABOUT,PANE_MOVE_Y)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANE_END();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?CWindowpane1
=GetDlgItem(IDC_PANE1);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?pane1.SetParent(m_left);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?CWindowpane2
=GetDlgItem(IDC_PANE2);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?pane2.SetParent(m_left);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?m_left.SetSplitterPanes(pane1,pane2);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
return0;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}

如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?

PANE的源代码

如何使用WINXGUI实现对话框布局控制Splitter与Pane?//winx使用子类化(Subclass)技术实现Pane控制
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
//byQWL1996@GMAIL.COM
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?/*
如何使用WINXGUI实现对话框布局控制Splitter与Pane?用法:在对话框的初始化中使用,允许子类化GroupBox,Picture,StaticText三种控件
如何使用WINXGUI实现对话框布局控制Splitter与Pane?允许在对话框设计中直接作为Pane,容纳子控件,并进行布局控制.
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如果使用Splitter控制Pane,则只能子类化StaticText控件
如何使用WINXGUI实现对话框布局控制Splitter与Pane?例:
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_DLGRESIZE_BEGIN(TRUE)//layout
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_DLGRESIZE(IDC_STATIC1,ResizeAll)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_DLGRESIZE_END();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?intOnInitDialog(HWNDhWnd,HWNDwParam)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?{
如何使用WINXGUI实现对话框布局控制Splitter与Pane?CenterWindow();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANE_BEGIN(IDC_STATIC1)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEACCEL(IDR_ACCELERATOR)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEITEM(IDC_BTN1,PANE_SIZE_X|PANE_MOVE_Y)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANEITEM(IDC_BTN2,0)//nomoveandnosize
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANE_END();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?return0;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
*/

如何使用WINXGUI实现对话框布局控制Splitter与Pane?#ifndef_WINX_STATIC_PANE_H_
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#define_WINX_STATIC_PANE_H_
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#pragmaonce
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#definePANE_SIZE_NONE0x00000000
如何使用WINXGUI实现对话框布局控制Splitter与Pane?#definePANE_MOVE_NONE0x00000000
如何使用WINXGUI实现对话框布局控制Splitter与Pane?#definePANE_SIZE_X0x00000001
如何使用WINXGUI实现对话框布局控制Splitter与Pane?#definePANE_SIZE_Y0x00000002
如何使用WINXGUI实现对话框布局控制Splitter与Pane?#definePANE_MOVE_X0x00000004
如何使用WINXGUI实现对话框布局控制Splitter与Pane?#definePANE_MOVE_Y0x00000008
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?
namespacewinx{
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?#ifndefWINX_DLGRESIZE_BEGIN_NOGRIPPER
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#defineWINX_DLGRESIZE_BEGIN_NOGRIPPER(fMinSizeLimit)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_DLGRESIZE_BEGIN_EX(fMinSizeLimit)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_DLGRESIZE_ADDGRIPPER(FALSE)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_DLGRESIZE_MAP_BEGIN()
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#endif
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#defineWINX_PANE_ACCEL()
如何使用WINXGUI实现对话框布局控制Splitter与Pane?private:
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_ACCEL_EX(_winx_hAccel);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?HACCEL_winx_hAccel;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
public:
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?VOIDwinx_msgOnAccelInit(HWNDhWnd)
{
如何使用WINXGUI实现对话框布局控制Splitter与Pane?_winx_hAccel
=NULL;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}

如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?VOIDwinx_msgOnAccelLoad(intidAccel){
如何使用WINXGUI实现对话框布局控制Splitter与Pane?_winx_hAccel
=winx::LoadAccelerators(m_hWnd,idAccel);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}

如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?VOIDwinx_msgOnAccelTerm(HWNDhWnd){
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
if(_winx_hAccel!=NULL)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?::DestroyAcceleratorTable(_winx_hAccel);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?_winx_hAccel
=NULL;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}

如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
classCStaticPane:publicwinx::Static<CStaticPane>
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?{
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
public:
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_DLG_ACCEL();
//enableaccelerator
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_PANE_ACCEL();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_CMDS_BEGIN_EX()
//commanddispatcher
如何使用WINXGUI实现对话框布局控制Splitter与Pane?::SendMessage(::GetParent(hWnd),WM_COMMAND,wParam,(LPARAM)hWnd);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
returnTRUE;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_CMDS_END_EX();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_NOTIFY_BEGIN()
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
*pResult=::SendMessage(::GetParent(hWnd),WM_NOTIFY,(WPARAM)idCtrl,(LPARAM)pnmh);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
returnTRUE;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_NOTIFY_END()
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_DLGRESIZE_BEGIN_NOGRIPPER(TRUE)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?WINX_DLGRESIZE_END();
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
voidAddItem(HWNDhDlg,intid)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?
{
如何使用WINXGUI实现对话框布局控制Splitter与Pane?RECTrect;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?GetWindowRect(
&rect);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?CWindowitem
=::GetDlgItem(hDlg,id);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?RECTrc;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?item.GetWindowRect(
&rc);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?item.SetParent(m_hWnd);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?rc.left
-=rect.left;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?rc.top
-=rect.top;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?rc.right
-=rect.left;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?rc.bottom
-=rect.top;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?item.MoveWindow(
&rc);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}

如何使用WINXGUI实现对话框布局控制Splitter与Pane?voidAddResize(intm_nCtlID,DWORDm_dwResizeFlags)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?
{
如何使用WINXGUI实现对话框布局控制Splitter与Pane?ATL::CWindowctl
=GetDlgItem(m_nCtlID);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?ATLASSERT(ctl.IsWindow());
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?RECTrectCtl
={0,0,0,0};
如何使用WINXGUI实现对话框布局控制Splitter与Pane?ctl.GetWindowRect(
&rectCtl);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?::MapWindowPoints(NULL,m_hWnd,(LPPOINT)
&rectCtl,2);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
//DWORDdwGroupFlag=(nGroupStart!=-1&&m_arrData.GetSize()==nGroupStart)?_DLSZ_BEGIN_GROUP:0;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?WTL::CDialogResize<DialogResizeClass>::_AtlDlgResizeDatadata={m_nCtlID,m_dwResizeFlags,{rectCtl.left,rectCtl.top,rectCtl.right,rectCtl.bottom}};
如何使用WINXGUI实现对话框布局控制Splitter与Pane?_winx_resizer.m_arrData.Add(data);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}

如何使用WINXGUI实现对话框布局控制Splitter与Pane?}
;
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}
//namespacewinx
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?#defineWINX_PANE_BEGIN(nPaneID)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?{
如何使用WINXGUI实现对话框布局控制Splitter与Pane?winx::CStaticPane::DoSubclassDlgItem(m_hWnd,nPaneID);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?winx::CStaticPane
*pPane=winx::CStaticPane::UnsafeGetInstance(::GetDlgItem(m_hWnd,nPaneID));
如何使用WINXGUI实现对话框布局控制Splitter与Pane?pPane
->ModifyStyleEx(0,WS_EX_TRANSPARENT,0);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#defineWINX_PANEACCEL(iAccel)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?pPane->OnAccelLoad(iAccel);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#defineWINX_PANEITEM(id,flags)
如何使用WINXGUI实现对话框布局控制Splitter与Pane?如何使用WINXGUI实现对话框布局控制Splitter与Pane?{
如何使用WINXGUI实现对话框布局控制Splitter与Pane?pPane
->AddItem(m_hWnd,id);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?pPane
->AddResize(id,flags);
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}

如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#defineWINX_PANE_END()
如何使用WINXGUI实现对话框布局控制Splitter与Pane?}

如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
如何使用WINXGUI实现对话框布局控制Splitter与Pane?
#endif//WINX_STATICPANE_H_

 

 

本文地址:http://www.45fan.com/dnjc/70893.html
Tags: 实现 布局 WINXGUI
编辑:路饭网
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部