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

📄 mtextwidthsetdlg.cpp

📁 mtext,编辑器,支持潜入对象
💻 CPP
字号:
// MTextWidthSetDlg.cpp : implementation file
//

#include "stdafx.h"
#include "MTextWidthSetDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMTextWidthSetDlg dialog


CMTextWidthSetDlg::CMTextWidthSetDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CMTextWidthSetDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CMTextWidthSetDlg)
	m_bIsNoWrap = FALSE;
	//}}AFX_DATA_INIT
}


void CMTextWidthSetDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CMTextWidthSetDlg)
	DDX_Control(pDX, IDC_EDIT_Width, m_ctrlWidth);
	DDX_Control(pDX, IDC_COMBO_LineSpace_Style, m_ctrlLineSpaceStyle);
	DDX_Control(pDX, IDC_COMBO_LineSpace, m_ctrlLineSpace);
	DDX_Check(pDX, IDC_CHECK_NoWrap, m_bIsNoWrap);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CMTextWidthSetDlg, CDialog)
	//{{AFX_MSG_MAP(CMTextWidthSetDlg)
	ON_BN_CLICKED(IDC_CHECK_NoWrap, OnCHECKNoWrap)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMTextWidthSetDlg message handlers

void CMTextWidthSetDlg::OnCHECKNoWrap() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	if(m_bIsNoWrap)
	{
		m_ctrlWidth.EnableWindow(FALSE);
	}
	else
	{
		m_ctrlWidth.EnableWindow(TRUE); 
	}
}

BOOL CMTextWidthSetDlg::OnInitDialog()  
{
	CDialog::OnInitDialog(); 
	CString strWidth;
	if(m_dWidth<1E-11)
	{
		m_bIsNoWrap=TRUE;
		m_ctrlWidth.EnableWindow(FALSE);
	}
	UpdateData(FALSE);
	strWidth.Format("%.4lf",m_dWidth);
	m_ctrlWidth.SetWindowText(strWidth);

	strWidth.LoadString(IDS_STRING_LineSpaceStyle_At_least);
	m_ctrlLineSpaceStyle.AddString(strWidth);
	strWidth.LoadString(IDS_STRING_LineSpaceStyle_Precise);
	m_ctrlLineSpaceStyle.AddString(strWidth);
	m_ctrlLineSpaceStyle.SetCurSel(m_iLineSpaceStyle-1);
	
	
	strWidth.Format("%lf",m_dLineSpace);
	int index=strWidth.GetLength()-1;
	while(index>0&&strWidth[index]=='0')
		index--;
	if(strWidth[index]=='.')
		index--;
	strWidth=strWidth.Left(index+1);
	strWidth+='x';	
	index=m_ctrlLineSpace.FindString(-1,strWidth);
	if(index!=LB_ERR)
	{
		m_ctrlLineSpace.SetCurSel(index);
	}
	else
	{
		index=m_ctrlLineSpace.AddString(strWidth);
		m_ctrlLineSpace.SetCurSel(index);
	}
	// TODO: Add extra initialization here
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CMTextWidthSetDlg::OnOK() 
{
	// TODO: Add extra validation here
	CString strWidth;
	m_ctrlWidth.GetWindowText(strWidth);
	m_dWidth=atof(strWidth);
	if(m_dWidth<1E-11)
	{
		m_bIsNoWrap=TRUE;
	}
	if(m_bIsNoWrap)
	{
		m_dWidth=0.0;
	}
	m_ctrlLineSpace.GetWindowText(strWidth);
	m_dLineSpace=atof(strWidth);
	if(m_dLineSpace<0.25||m_dLineSpace>4.0)
		m_dLineSpace=1.0;
	m_iLineSpaceStyle=m_ctrlLineSpaceStyle.GetCurSel()+1;
	CDialog::OnOK();
}

⌨️ 快捷键说明

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