精华内容
下载资源
问答
  • 固定位置创建对话框

    2013-04-27 21:27:19
    在单击按钮后,如何创建一个固定位置的对话框?我试过了在OnBtn中创建CDlg类实例,通该类实例实现SetWindowPos或者MoveWindow时,会产生一个wincore错误,该错误主要是由于SetWindowPos或者MoveWindow中Is...

    
    在单击按钮后,如何创建一个固定位置的对话框?我试过了在OnBtn中创建CDlg类实例,通该类的实例实现SetWindowPos或者MoveWindow时,会产生一个wincore的错误,该错误主要是由于SetWindowPos或者MoveWindow中的IsWindow错误造成的,获取不到相应的窗口句柄。解决该问题可以通过动态创建一个实例:
    void CMyDlg::OnBtnCreatedia() 
    {
    	// TODO: Add your control notification handler code here
    	dlgMode.Create(IDD_DIALOG_MODE, this);
    	dlgMode.MoveWindow(100,100,300, 300);
    	dlgMode.ShowWindow(SW_SHOW);
    }
    
    
    
    class CMyDlg : public CDialog
    {
    // Construction
    public:
    	CMyDlg(CWnd* pParent = NULL);	// standard constructor
    
    // Dialog Data
    	//{{AFX_DATA(CMyDlg)
    	enum { IDD = IDD_MY_DIALOG };
    		// NOTE: the ClassWizard will add data members here
    	//}}AFX_DATA
    
    	// ClassWizard generated virtual function overrides
    	//{{AFX_VIRTUAL(CMyDlg)
    	protected:
    	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
    	//}}AFX_VIRTUAL
    
    // Implementation
    protected:
    	HICON m_hIcon;
    
    	// Generated message map functions
    	//{{AFX_MSG(CMyDlg)
    	virtual BOOL OnInitDialog();
    	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
    	afx_msg void OnPaint();
    	afx_msg HCURSOR OnQueryDragIcon();
    	afx_msg void OnCreatedia();
    	afx_msg void OnCreatemodelessdia();
    	//}}AFX_MSG
    	DECLARE_MESSAGE_MAP()
    private:
    	CDlgMode dlgMode;
    
    };



    // 固定位置显示对话框Dlg.cpp : implementation file
    //
    
    #include "stdafx.h"
    #include "固定位置显示对话框.h"
    #include "固定位置显示对话框Dlg.h"
    
    #ifdef _DEBUG
    #define new DEBUG_NEW
    #undef THIS_FILE
    static char THIS_FILE[] = __FILE__;
    #endif
    
    /
    // CAboutDlg dialog used for App About
    
    class CAboutDlg : public CDialog
    {
    public:
    	CAboutDlg();
    
    // Dialog Data
    	//{{AFX_DATA(CAboutDlg)
    	enum { IDD = IDD_ABOUTBOX };
    	//}}AFX_DATA
    
    	// ClassWizard generated virtual function overrides
    	//{{AFX_VIRTUAL(CAboutDlg)
    	protected:
    	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
    	//}}AFX_VIRTUAL
    
    // Implementation
    protected:
    	//{{AFX_MSG(CAboutDlg)
    	//}}AFX_MSG
    	DECLARE_MESSAGE_MAP()
    };
    
    CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
    {
    	//{{AFX_DATA_INIT(CAboutDlg)
    	//}}AFX_DATA_INIT
    }
    
    void CAboutDlg::DoDataExchange(CDataExchange* pDX)
    {
    	CDialog::DoDataExchange(pDX);
    	//{{AFX_DATA_MAP(CAboutDlg)
    	//}}AFX_DATA_MAP
    }
    
    BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
    	//{{AFX_MSG_MAP(CAboutDlg)
    		// No message handlers
    	//}}AFX_MSG_MAP
    END_MESSAGE_MAP()
    
    /
    // CMyDlg dialog
    
    CMyDlg::CMyDlg(CWnd* pParent /*=NULL*/)
    	: CDialog(CMyDlg::IDD, pParent)
    {
    	//{{AFX_DATA_INIT(CMyDlg)
    		// NOTE: the ClassWizard will add member initialization here
    	//}}AFX_DATA_INIT
    	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
    	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
    }
    
    void CMyDlg::DoDataExchange(CDataExchange* pDX)
    {
    	CDialog::DoDataExchange(pDX);
    	//{{AFX_DATA_MAP(CMyDlg)
    		// NOTE: the ClassWizard will add DDX and DDV calls here
    	//}}AFX_DATA_MAP
    }
    
    BEGIN_MESSAGE_MAP(CMyDlg, CDialog)
    	//{{AFX_MSG_MAP(CMyDlg)
    	ON_WM_SYSCOMMAND()
    	ON_WM_PAINT()
    	ON_WM_QUERYDRAGICON()
    	ON_BN_CLICKED(IDC_CREATEDIA, OnCreatedia)
    	ON_BN_CLICKED(IDC_CREATEMODELESSDIA, OnCreatemodelessdia)
    	//}}AFX_MSG_MAP
    END_MESSAGE_MAP()
    
    /
    // CMyDlg message handlers
    
    BOOL CMyDlg::OnInitDialog()
    {
    	CDialog::OnInitDialog();
    
    	// Add "About..." menu item to system menu.
    
    	// IDM_ABOUTBOX must be in the system command range.
    	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
    	ASSERT(IDM_ABOUTBOX < 0xF000);
    
    	CMenu* pSysMenu = GetSystemMenu(FALSE);
    	if (pSysMenu != NULL)
    	{
    		CString strAboutMenu;
    		strAboutMenu.LoadString(IDS_ABOUTBOX);
    		if (!strAboutMenu.IsEmpty())
    		{
    			pSysMenu->AppendMenu(MF_SEPARATOR);
    			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
    		}
    	}
    
    	// Set the icon for this dialog.  The framework does this automatically
    	//  when the application's main window is not a dialog
    	SetIcon(m_hIcon, TRUE);			// Set big icon
    	SetIcon(m_hIcon, FALSE);		// Set small icon
    	
    	// TODO: Add extra initialization here
    
    	return TRUE;  // return TRUE  unless you set the focus to a control
    }
    
    void CMyDlg::OnSysCommand(UINT nID, LPARAM lParam)
    {
    	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
    	{
    		CAboutDlg dlgAbout;
    		dlgAbout.DoModal();
    	}
    	else
    	{
    		CDialog::OnSysCommand(nID, lParam);
    	}
    }
    
    // If you add a minimize button to your dialog, you will need the code below
    //  to draw the icon.  For MFC applications using the document/view model,
    //  this is automatically done for you by the framework.
    
    void CMyDlg::OnPaint() 
    {
    	if (IsIconic())
    	{
    		CPaintDC dc(this); // device context for painting
    
    		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
    
    		// Center icon in client rectangle
    		int cxIcon = GetSystemMetrics(SM_CXICON);
    		int cyIcon = GetSystemMetrics(SM_CYICON);
    		CRect rect;
    		GetClientRect(&rect);
    		int x = (rect.Width() - cxIcon + 1) / 2;
    		int y = (rect.Height() - cyIcon + 1) / 2;
    
    		// Draw the icon
    		dc.DrawIcon(x, y, m_hIcon);
    	}
    	else
    	{
    		CDialog::OnPaint();
    	}
    }
    
    // The system calls this to obtain the cursor to display while the user drags
    //  the minimized window.
    HCURSOR CMyDlg::OnQueryDragIcon()
    {
    	return (HCURSOR) m_hIcon;
    }
    
    void CMyDlg::OnCreatedia() 
    {
    	// TODO: Add your control notification handler code here
    
    	dlgMode.Create(IDD_DIALOG_MODE, this);
    	dlgMode.MoveWindow(100,100,300, 300);
    // 	dlgMode.DoModal();
    	dlgMode.ShowWindow(SW_SHOW);
    // 	dlgMode.SetWindowPos(this, 100,100,300, 300,SWP_SHOWWINDOW   );
    // 	dlgMode.DoModal();
    }
    
    void CMyDlg::OnCreatemodelessdia() 
    {
    	// TODO: Add your control notification handler code here
    	
    }
    



    展开全文
  • Excel分列功能非常强大,不仅仅可以将单元格数据拆分成多列,而且还可以利用列数据...利用“固定宽度”进行拆分单元格下图数据是从网络拷贝过来,现在所有数据都放在了A列,我们如何将这些数据按照不同字...

    Excel分列功能非常强大,不仅仅可以将单元格数据拆分成多列,而且还可以利用列数据格式来规范数据。

    一、将单列单元格数据轻松拆分成多列

    Excel分列主要功能就是将单列数据拆分成多列,它提供两种方式:

    第一种利用“分隔符号”进行拆分;第二种就是利用“固定宽度”进行拆分。

    以下分别说明:

    1.利用“固定宽度”进行拆分单元格

    下图的数据是从网络拷贝过来的,现在所有的数据都放在了A列,我们如何将这些数据按照不同的字段拆分成多列呢?

    下面我们先利用“固定宽度”的方式来进行拆分。

    f98aa073b4419f3466cf6f4cae61da4d.png

    1、选择“固定宽度”

    a9f0d8b3c7fe5ba728092b68de777602.png

    2、在需要的位置上单击以建立分列线

    8019d2d7212cff02cfd528f1a7441b35.png

    3、不需要的数据可直接选中,然后单击“不导入此列(跳过)“忽略掉,另外可选择分列后数据的存放位置。

    66cc69b56b3e3a6ba844bc9535d2a363.png

    4、拆分完毕,完全按照不同的字段排列了。

    576c77e593be3c6806f5c9a0e5a728e8.png

    2.利用“分隔符号”进行拆分

    要求同上,下面我们来演示如何利用“分隔符号”进行同样的拆分。

    所谓“分隔符号”,通常包括了空格,符号,以及文字。

    我们通过观察发现,此例中利用“空格”这个分隔符号来进行拆分可以达到需要的而结果。

    6fd2d6a0a6b606cd463fa473fb5e420f.png

    1、选择分隔符号

    3b756784d67498f39ad5a531bfe5a8e8.png

    2、勾选“连续分隔符号视为单个处理”这点非常重要

    151d9718998d9477c71f8c21417030a9.png

    3、位置可选择放在它处

    17fec8f3baeeb5380bae2ea71c8491b7.png

    4、殊途同归,也很方便。

    62b17fe1eb09291d160630fa9338b483.png

    二、轻松规范日期格式

    通常在工作中,关于日期格式最为常见的错误有下图中的4种,这些错误会导致Excel表格无法统计。

    现在我们利用分列功能就可以轻轻松松解决这些问题了。

    facfc5b9f2bc991ffa2e28a10a8bdcbe.png

    很眼熟吧。

    对于错误日期一, 很多同学都可以轻松解决。

    直接选中这列数据,Ctrl+H打开替换对话框,查找对话框类输入英文半角句号“.",替换框内填入”-",单击全部替换即可。

    其实对于这些奇奇怪怪的非标准日期格式,使用分列功能可以一次搞定。

    三、轻松转换单元格格式的技巧

    1.巧妙将文本型数字转换成数字型格式

    文本型数字是无法求和的,因此在遇到需要统计的时候,通常需要将文本型数字转换成数字型数字,方法很多,今天我们利用分列来达成这一效果。

    5410ab1befa3bb023187b7723d55f87b.png
    23f676346c2e66d015b455a53564f634.png
    28959172c61b4ccf2f7f3eb788f7f8fe.png

    2.巧妙去除单元格中的多余空格

    在Excel中,空格很不受待见,那么如何去除单元格的多余空格呢?下面我们来演示分列的方法。

    f6d9dece80dcbcf312fcc1115f7a7298.png

    一些系统中导出的Excel文件尤其需要去除类似的空格

    f7a4900045e91510d07c3f5a9c2cd70a.png

    要忽略空格那一列

    52e91d905c4bf5c4acb38e758ae83826.png
    展开全文
  • word 图片位置固定方法

    千次阅读 2016-08-18 17:21:05
    插入一幅图片,如何可以固定图片位置呢?对Word感兴趣朋友可加Word学习交流群:180627193(www.itblw.com)  word第一种图片位置固定方法:  右击图片,选“设置图片格式”,在“设置图片格式”对话框中,选中...

    我们在Word中给文档添加图片可以达到图文并茂,从而产生更好的效果。默认情况下,插入的图片总是随随文字移动而移动。插入一幅图片,如何可以固定图片位置呢?对Word感兴趣的朋友可加Word学习交流群:180627193(www.itblw.com

      word第一种图片位置固定方法:

      右击图片,选“设置图片格式”,在“设置图片格式”对话框中,选中“版式”选项卡,环绕方式选“浮于文字上方”, 再点“高级”按钮,在“高级版式”对话框中的“图片位置”页把“对象随文字移动” 和“锁定标记”前面的勾去掉即可。

      word第二种图片位置固定方法:

      可以使用“文本框”方式。先单击选中已经插入的图片,选菜单“插入→文本框→横/竖排”命令后, 设置文本框边框线条色为“无”,再将光标置于文本框中的图片的后边,回车后输入要说明的文字并设置成属性,这样就把图片及其说明文字固定在了文本框中,无论你将文本框放在了Word文档中的什么位置,图片与其说明文字的相对位置是永远不变的。


    展开全文
  • 下面介绍如何使应用程序记住控制栏状态和位置,包括其可视还是隐藏、固定还是浮动、水平还是垂直等信息。 很幸运,保持和恢复这些信息只需要简单调用CFrameWnd::SaveBarState()和CFrameWnd::LoadBarState(),这...

          现在的Window程序经常被许多控制栏填充的满满的,像工具栏、状态栏、对话框栏和自定义栏等待。下面介绍如何使应用程序记住控制栏的状态和位置,包括其可视还是隐藏、固定还是浮动、水平还是垂直等信息。

     

          很幸运,保持和恢复这些信息只需要简单的调用CFrameWnd::SaveBarState()和CFrameWnd::LoadBarState(),这两个函数的声明都很简单:

          void  CFrameWnd::SaveBarState(LPCTSTR lpszProfileName) const;

          void  CFrameWnd::LoadBarState(LPCTSTR lpszProfileName) const;

    lpszProfileName是一个简单的字符串,在函数中用来保存和恢复信息的,在多窗口程序中,每个窗口都有保存自己的控制栏信息。

     

          下面的步骤说明了如何为一个窗口保存控制栏状态:

    第一步:用ClassWizard添加WM_CLOSE_消息句柄,在其中调用SaveBarState()函数

    const CString strBarState = _T( "MainFrameBarState" );

    void CMainFrame::OnClose()
    {

          // Save bar state

          SaveBarState(strBarState);

          CMDIFrameWnd::OnClose();
    }

     

    第二步:在OnCreate()函数的最后调用LoadBarState()函数

    int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
    {
          if (CMDIFrameWnd::OnCreate(lpCreateStruct) == -1)
               return -1;

          ............

     

          LoadBarState(strBarState);

          return 0;
    }

     

     

     

     

    展开全文
  • PopupWindow简介  ...(1)AlterDialog的位置固定的,而PopupWindow的位置是随意的。 (2)AlterDialog不会阻塞线程,而PopupWindow会阻塞线程。 2.那么如何使用 我们在下面会给出,就不过多介绍了,直接在项
  • 如何固定视图间分隔线 如何动态改变切分窗口大小 如何实现切分窗口中视图动态切换 OnDraw和OnPaint之间有什么关系 如何弹出右键菜单 如何显示级联菜单 如何给系统菜单添加一个菜单项 如何将窗体顶端标题栏...
  • excel使用

    2012-11-25 17:06:01
    @符号的位置决定了Excel输入的数字数据相对于添加文本的位置。(3)创建条件格式 可以使用六种逻辑符号来设计一个条件格式:>(大于)、>=(大于等于)、<(小于)、(小于等于)、=(等于)、(不等于),如果你...
  • 6.6 对话框的位置控制 实例260 始终在最上面的窗体 实例261 如QQ般隐藏的窗体 实例262 晃动的窗体 实例263 磁性窗体 6.7 控制对话框的标题栏 实例264 闪烁标题栏的窗体 实例265 隐藏和显示标题栏 实例266 ...
  • 6.6 对话框的位置控制 实例260 始终在最上面的窗体 实例261 如QQ般隐藏的窗体 实例262 晃动的窗体 实例263 磁性窗体 6.7 控制对话框的标题栏 实例264 闪烁标题栏的窗体 实例265 隐藏和显示标题栏 实例266 ...
  • 第一部分 界面设计

    2013-10-22 23:10:34
    实例102 如何修改文件打开对话框的按钮标题 实例103 如何使用查找与替换对话框 实例104 如何获取和设置当前目录 实例105 如何判断文件类型 实例106 如何获取系统所有文件类型 实例107 如何获取和设置文件属性 ...
  • LINGO软件学习

    2009-08-08 22:36:50
    学完本节后,你对基于建模技术如何引入模型会有一个基本理解。 2.1 为什么使用集 集是LINGO建模语言基础,是程序设计最强有力基本构件。借助于集,能够用一个单一、长、简明复合公式表示一系列相似...
  • WM_CTLCOLOR消息缺省处理函数CWnd::OnCtlColor返回一个HBRUSH类型的句柄,这样,就可以设置前景和背景文本颜色,并为控件或者对话框的非文本区域选定一个刷子。 WM_CTLCOLOR的映射函数原型如下: afx_msg HBRUSH ...
  • 尽我所知,除了文中特别加以标注和致谢地方外,论文中不包含其他人已经发表或撰写过研究成果,也不包含为获得东南大学或其它教育机构学位或证书而使用过材料。与我一同工作同志对本研究所做任何贡献均已...
  • VBSCRIPT中文手册

    热门讨论 2010-11-12 10:13:06
    InStrRev 函数 返回一个字符串在另一个字符串中出现的位置,是从字符串的末尾算起。 Int 函数 返回数的整数部分。 整数除法运算符(\) 两数相除,返回的商取其整数部分。 Is 运算符 比较两个对象引用变量。 ...
  • vb Script参考文档

    2009-07-28 22:13:02
    InStrRev 函数 返回一个字符串在另一个字符串中出现的位置,是从字符串的末尾算起。 Int 函数 返回数的整数部分。 整数除法运算符(\) 两数相除,返回的商取其整数部分。 Is 运算符 比较两个对象引用变量。 ...
  • VBSCRIP5 -ASP用法详解

    2010-09-23 17:15:46
    InStrRev 函数 返回一个字符串在另一个字符串中出现的位置,是从字符串的末尾算起。 Int 函数 返回数的整数部分。 整数除法运算符(\) 两数相除,返回的商取其整数部分。 Is 运算符 比较两个对象引用变量。 ...
  • 例如在你的\MSDEV\LIB(VC5.0在DevStudio\VC\Lib)目录下的Win32Api.CSV就是这样的文件(16KB)<END><br>53,scrl.zip 这是一个由Visual C++ 5.0开发的基于对话框的应用,它演示如何使用CListCtrl::Scroll()函数,它是...
  • 如何控制截图程序:捕获栏(屏幕顶部边缘)将鼠标指针移动到屏幕顶部边缘,捕获栏就会自动浮现,运用此技术,你可以方便的开始/停止捕获图像,或是访问程序设置,注意,你也可以根据需要自定义设置捕获栏的位置。...
  • 游戏资源提取工具

    2012-10-12 14:59:15
    存储文件具有相同的名称和它的位置创建一个文件夹,如果一个。 如果下面的文件夹,设置如下的输出文件夹。 缓冲区大小内存,用于提取文件的大小。 -临时文件夹一个位置来提取临时视图,如果您通过双击播放。 当您...
  • GNOME GTK+ 编程宝典.pdf

    千次下载 热门讨论 2012-11-19 15:28:08
    3.2 对话框的工作方式 3.3 gnome定义的对话框 3.3.1 做一个简单的声明 3.3.2 询问一个简单的问题 3.3.3 确定对话框类型 3.3.4 键盘输入 3.3.5 传给回调的数据 3.3.6 进度条 3.4 创建弹出式窗口和...
  • 预定义类型 下表列出了预定义类型,并说明如何使用。 类型 object 说明 所有其他类型最终 基类型 字符串类型; 字符串是 Unicode 字符序列 8 位有符号整型 16 位有符号整型 32 位有符号整型 64 位有符号整型 示例...
  • vc++ 应用源码包_1

    热门讨论 2012-09-15 14:22:12
    内部包含了atl控件开发以及如何应用,演示了COM包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl调用方法 ...
  • vc++ 应用源码包_2

    热门讨论 2012-09-15 14:27:40
    内部包含了atl控件开发以及如何应用,演示了COM包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl调用方法 ...
  • vc++ 应用源码包_6

    热门讨论 2012-09-15 14:59:46
    内部包含了atl控件开发以及如何应用,演示了COM包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl调用方法 ...
  • 单击此处获取有关如何向C#团队提供反馈信息。 现在有一个vi仿真模式!转到编辑| 首选项| vi启用模式。请在此处报告任何问题。 LINQPad现在支持C#7.2。转到样本| C#7中有关C#7.2新功能演示新功能。 F#...
  • JavaScript王者归来

    2014-11-05 13:59:25
    10.2.5 指定匹配的位置 10.2.6 标志——高级模式匹配的规则 10.3 模式匹配 10.3.1 用于模式匹配的String方法及其例子 10.3.2 用于模式匹配的RegExp方法 10.3.2.1 一个使用exec()方法从身份证号码获取生日的例子 10.3...
  • vc++ 应用源码包_5

    热门讨论 2012-09-15 14:45:16
    内部包含了atl控件开发以及如何应用,演示了COM包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl调用方法 ...
  • EXCEL 2007 宝典 附光盘文件

    热门讨论 2010-04-02 14:43:05
    range copy.xlsm:一个包含复制一个大小不固定区域VBA宏工作簿。 range move.xlsm:一个包含移动单元格区域VBA宏工作簿。 select cells.xlsm:一个包含演示选中区域技巧VBA宏工作簿。 selection ...
  • vc++ 应用源码包_4

    热门讨论 2012-09-15 14:38:35
    内部包含了atl控件开发以及如何应用,演示了COM包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl调用方法 ...
  • vc++ 应用源码包_3

    热门讨论 2012-09-15 14:33:15
    内部包含了atl控件开发以及如何应用,演示了COM包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl调用方法 ...

空空如也

空空如也

1 2 3
收藏数 60
精华内容 24
关键字:

如何固定对话框的位置