bp_layer_dialog.cpp
来自「故障诊断工作涉及的领域相当广泛」· C++ 代码 · 共 158 行
CPP
158 行
// bp_layer_dialog.cpp : implementation file
//
#include "stdafx.h"
#include "richtest.h"
#include "bp_layer_dialog.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// bp_layer_dialog dialog
bp_layer_dialog::bp_layer_dialog(bp_layer* player,CWnd* pParent /*=NULL*/)
: CDialog(bp_layer_dialog::IDD, pParent)
{
//{{AFX_DATA_INIT(bp_layer_dialog)
// NOTE: the ClassWizard will add member initialization here
this->player=player;
//}}AFX_DATA_INIT
}
void bp_layer_dialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(bp_layer_dialog)
// NOTE: the ClassWizard will add DDX and DDV calls here
DDX_Text(pDX,IDC_EDIT1,player->delta_slope);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(bp_layer_dialog, CDialog)
//{{AFX_MSG_MAP(bp_layer_dialog)
ON_CBN_SELCHANGE(IDC_COMBO_FUNC, OnSelendcancelComboFunc)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// bp_layer_dialog message handlers
void bp_layer_dialog::OnSelendcancelComboFunc()
{
// TODO: Add your control notification handler code here
CComboBox* pcbx=(CComboBox*)this->GetDlgItem(IDC_COMBO_FUNC);
int nIndex=pcbx->GetCurSel();
if(nIndex!=LB_ERR)
{
switch(nIndex)
{
case 0:
player->type=sigmod;
break;
case 1:
player->type=bark;
break;
case 2:
player->type=slope;
break;
case 3:
player->type=bark_slope;
break;
default:
player->type=sigmod;
break;
}
}
CWnd* ppic=GetDlgItem(IDC_FUNC_PIC);
CRect rect;
CDC memDC;
CBitmap bitmap;
ppic->GetWindowRect(&rect);
switch(nIndex)
{
case 0:
bitmap.LoadBitmap(IDB_SIGMOD);
break;
case 1:
bitmap.LoadBitmap(IDB_BAR);
break;
case 2:
bitmap.LoadBitmap(IDB_SLOPE);
break;
case 3:
bitmap.LoadBitmap(IDR_ZOOM_BAR);
break;
default:
break;
}
BITMAP mbitmap;
bitmap.GetObject(sizeof(BITMAP),&mbitmap);
CDC* pdc=ppic->GetDC();
memDC.CreateCompatibleDC(pdc);
CBitmap* poldmembmp=memDC.SelectObject(&bitmap);
pdc->StretchBlt(0,0,rect.Width(),rect.Height(),&memDC,0,0,mbitmap.bmWidth,mbitmap.bmHeight,SRCCOPY);
if(poldmembmp)
memDC.SelectObject(poldmembmp);
memDC.DeleteDC();
char slopeinfo[]="斜率";
char gaossinfo[]="得尔塔";
CWnd* pwnd=GetDlgItem(IDC_STATIC_PRT);
CWnd* pwnde=GetDlgItem(IDC_EDIT1);
if(pwnd)
{
if(player->type==slope)
{pwnd->SetWindowText(slopeinfo);
pwnd->ShowWindow(1);
pwnde->ShowWindow(1);
}
else
{pwnd->ShowWindow(0);
pwnde->ShowWindow(0);
}
}
}
BOOL bp_layer_dialog::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
cmbfunctype=(CComboBox*)GetDlgItem(IDC_COMBO_FUNC);
cmbfunctype->InsertString(0,"sigmod");
cmbfunctype->InsertString(1,"bar");
cmbfunctype->InsertString(2,"slope");
cmbfunctype->InsertString(3,"bar-slope");
cmbfunctype->SetCurSel(0);
CWnd* ppic=GetDlgItem(IDC_FUNC_PIC);
CRect rect;
CDC memDC;
CBitmap bitmap;
ppic->GetWindowRect(&rect);
bitmap.LoadBitmap(IDR_DRAW_BAR);
BITMAP mbitmap;
bitmap.GetObject(sizeof(BITMAP),&mbitmap);
CDC* pdc=ppic->GetDC();
memDC.CreateCompatibleDC(pdc);
CBitmap* poldmembmp=memDC.SelectObject(&bitmap);
pdc->StretchBlt(0,0,rect.Width(),rect.Height(),&memDC,0,0,mbitmap.bmWidth,mbitmap.bmHeight,SRCCOPY);
if(poldmembmp)
memDC.SelectObject(poldmembmp);
memDC.DeleteDC();
CWnd *pwnd,*pwnde;
char slopeinfo[]="斜率";
char gaossinfo[]="得尔塔";
pwnd=GetDlgItem(IDC_STATIC_PRT);
pwnd->ShowWindow(0);
pwnde=GetDlgItem(IDC_EDIT1);
pwnde->ShowWindow(0);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?