📄 curvecolor.cpp
字号:
// CurveColor.cpp : implementation file
//
#include "stdafx.h"
#include "wgl_32.h"
#include "CurveColor.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CCurveColor dialog
CCurveColor::CCurveColor(CWgl_32Doc * p,CWnd* pParent /*=NULL*/)
: CDialog(CCurveColor::IDD, pParent),m_ChannelList(p)
{
bChange = FALSE;
pCWgl_32Doc = p;
//{{AFX_DATA_INIT(CCurveColor)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CCurveColor::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CCurveColor)
DDX_Control(pDX, IDC_CHANNELCOLOR, m_ChannelList);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CCurveColor, CDialog)
//{{AFX_MSG_MAP(CCurveColor)
ON_BN_CLICKED(IDC_APPLY, OnApply)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CCurveColor message handlers
void CCurveColor::OnApply()
{
int *Index;
COLORREF clr;
int cn = m_ChannelList.GetSelCount();
if(cn == LB_ERR || cn == 0) return;
Index = new int[cn];
if(Index==NULL)
{
MessageBox("内存分配错误!",
"严重错误",MB_OK|MB_ICONSTOP);
return;
}
m_ChannelList.GetSelItems(cn,Index);
clr = pCWgl_32Doc->m_pChannelIndex[m_ChannelList.GetCurSel()].Color;
CColorDialog clrdlg(clr,CC_SOLIDCOLOR|CC_PREVENTFULLOPEN);
if(clrdlg.DoModal()==IDOK)
{
bChange = TRUE;
COLORREF color = clrdlg.GetColor();
for(int i=0; i<cn; i++)
pCWgl_32Doc->m_pChannelIndex[Index[i]].Color = color;
m_ChannelList.Invalidate();
}
delete[] Index;
}
BOOL CCurveColor::OnInitDialog()
{
CDialog::OnInitDialog();
ChannelNumber *m_pChannelIndex=pCWgl_32Doc->m_pChannelIndex;
for(int i=0; i<pCWgl_32Doc->m_ChannelNum; i++)
m_ChannelList.AddListItem(m_pChannelIndex[i].No);
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -