4 Star 0 Fork 2

leegoobin/AutoPHS

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
dlgspan.cpp 15.41 KB
一键复制 编辑 原始数据 按行查看 历史
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622
// DlgSpan.cpp : implementation file
//
#include "stdafx.h"
#include "autophs.h"
#include "EDIBgbl.h"
#include "DlgSpan.h"
#include "userphs.h"
#include "modPHScal.h"
#include <math.h>
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgSpan dialog
CDlgSpan gDlgSpan;
CDlgSpan::CDlgSpan(CWnd* pParent /*=NULL*/)
: CDialog(CDlgSpan::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgSpan)
m_strLMaxR = (_T(""));
m_strLMaxS = (_T(""));
m_strMD = (_T(""));
m_strIsoWeight = (_T("10"));
m_strQ = (_T(""));
m_strTemp = (_T(""));
m_strLMaxRNew = (_T(""));
m_strLMaxSNew = (_T(""));
m_strQp = (_T(""));
m_bHighCrSteel = FALSE;
m_bPG40 = FALSE;
//}}AFX_DATA_INIT
m_iDWItemIndex=-1;
m_iMediaItemIndex=-1;
m_iMaterialItemIndex=-1;
m_iMediaHotIndex=-1;
m_iDWHotIndex=-1;
m_iMaterialHotIndex=-1;
}
void CDlgSpan::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgSpan)
DDX_Control(pDX, IDC_COMBO_TEMP, m_comboTemp);
DDX_Control(pDX, IDC_LIST_MEDIA, m_lstMedia);
DDX_Control(pDX, IDC_LIST_MATERIAL, m_lstMaterial);
DDX_Control(pDX, IDC_LIST_DW, m_lstDW);
DDX_Text(pDX, IDC_STATIC_LMAX_R, m_strLMaxR);
DDX_Text(pDX, IDC_STATIC_LMAX_S, m_strLMaxS);
DDX_Text(pDX, IDC_EDIT_MEDIADENSITY, m_strMD);
DDX_Text(pDX, IDC_EDIT_ISOWEIGHT, m_strIsoWeight);
DDX_Text(pDX, IDC_EDIT_Q, m_strQ);
DDX_CBStringExact(pDX, IDC_COMBO_TEMP, m_strTemp);
DDX_Text(pDX, IDC_STATIC_LMAX_RNEW, m_strLMaxRNew);
DDX_Text(pDX, IDC_STATIC_LMAX_SNEW, m_strLMaxSNew);
DDX_Text(pDX, IDC_EDIT_Qp, m_strQp);
DDX_Check(pDX, IDC_CHECK_HIGH_CR, m_bHighCrSteel);
DDX_Check(pDX, IDC_CHECK_PG40, m_bPG40);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgSpan, CDialog)
//{{AFX_MSG_MAP(CDlgSpan)
ON_NOTIFY(LVN_HOTTRACK,IDC_LIST_MEDIA, OnHottrackListMedia)
ON_NOTIFY(LVN_HOTTRACK,IDC_LIST_MATERIAL, OnHottrackListMaterial)
ON_NOTIFY(LVN_HOTTRACK,IDC_LIST_DW, OnHottrackListDw)
ON_WM_ACTIVATE()
ON_WM_DESTROY()
ON_WM_CLOSE()
ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST_DW, OnItemchangedListDw)
ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST_MATERIAL, OnItemchangedListMaterial)
ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST_MEDIA, OnItemchangedListMedia)
ON_EN_CHANGE(IDC_EDIT_MEDIADENSITY, OnChangeEditMediadensity)
ON_EN_CHANGE(IDC_EDIT_ISOWEIGHT, OnChangeEditIsoweight)
ON_CBN_EDITCHANGE(IDC_COMBO_TEMP, OnEditchangeComboTemp)
ON_CBN_SELCHANGE(IDC_COMBO_TEMP, OnSelchangeComboTemp)
ON_BN_CLICKED(IDC_CHECK_HIGH_CR, OnCheckHighCr)
ON_BN_CLICKED(IDC_CHECK_PG40, OnCheckPg40)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgSpan message handlers
BOOL CDlgSpan::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
LOGFONT fg;
CFont* tmpFnt=GetDlgItem(IDC_STATIC_LMAX_R)->GetFont();
tmpFnt->GetLogFont(&fg);
fg.lfWeight=FW_BOLD;
fg.lfHeight=-14;
m_outFont.CreateFontIndirect(&fg);
GetDlgItem(IDC_STATIC_LMAX_R)->SetFont(&m_outFont);
GetDlgItem(IDC_STATIC_LMAX_S)->SetFont(&m_outFont);
GetDlgItem(IDC_STATIC_LMAX_RNEW)->SetFont(&m_outFont);
GetDlgItem(IDC_STATIC_LMAX_SNEW)->SetFont(&m_outFont);
m_iDWItemIndex=-1;
m_iMediaItemIndex=-1;
m_iMaterialItemIndex=-1;
m_lstDW.SetExtendedStyle(m_lstDW.GetExtendedStyle()|LVS_EX_HEADERDRAGDROP|LVS_EX_FULLROWSELECT
|LVS_EX_GRIDLINES|LVS_EX_ONECLICKACTIVATE|LVS_EX_UNDERLINEHOT);//LVS_EX_TRACKSELECT);
m_lstMaterial.SetExtendedStyle(m_lstMaterial.GetExtendedStyle()|LVS_EX_FULLROWSELECT|LVS_EX_ONECLICKACTIVATE|LVS_EX_UNDERLINEHOT);//LVS_EX_TRACKSELECT);
m_lstMedia.SetExtendedStyle(m_lstMedia.GetExtendedStyle()|LVS_EX_FULLROWSELECT|LVS_EX_ONECLICKACTIVATE|LVS_EX_UNDERLINEHOT);//LVS_EX_TRACKSELECT);
m_lstDW.AddColumn( _T("BH"),0,70);
m_lstDW.AddColumn(_T("DW"),1,40);
m_lstDW.AddColumn(_T("S"),40);
m_lstMedia.InsertColumn( 0,_T("S"),LVCFMT_LEFT,80);
m_lstMaterial.InsertColumn(0,_T("S"),LVCFMT_LEFT,80);
LoadListDW();
LoadListMedia();
LoadListMaterial();
LoadTemp();
Cal();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDlgSpan::LoadListDW()
{
try
{
CDaoRecordset rs;
COleVariant vTmp;
rs.m_pDatabase=&EDIBgbl::dbMaterial;//20071102 "dbSORT" 改为 "Material"
CString strSQL;
strSQL=_T("SELECT * FROM [PipeDiameter] ORDER BY [DW],[S]");
rs.Open(dbOpenSnapshot,strSQL);
int i=0;
while(!rs.IsEOF())
{
rs.GetFieldValue(_T("BH"),vTmp);
m_lstDW.AddItem(i,0,vtos(vTmp));
rs.GetFieldValue(_T("DW"),vTmp);
m_lstDW.AddItem(i,1,vtos(vTmp));
rs.GetFieldValue(_T("S"),vTmp);
m_lstDW.AddItem(i,2,vtos(vTmp));
rs.MoveNext();
i++;
}
rs.Close();
if(m_lstDW.GetItemCount()>0)
{
m_lstDW.SelectItem(0);
m_iDWItemIndex=0;
m_iDWHotIndex=0;
}
}
catch(CDaoException * e)
{
e->ReportError();
e->Delete();
}
}
void CDlgSpan::LoadListMedia()
{
try
{
CDaoRecordset rs;
COleVariant vTmp;
rs.m_pDatabase=&EDIBgbl::dbMaterial;//20071102 "dbSORT" 改为 "dbMaterial"
CString strSQL;
strSQL=_T("SELECT [Media],[Density] FROM [MediaDensity] ORDER BY [SEQ]");
rs.Open(dbOpenSnapshot,strSQL);
int i=0,ix;
float * pflt;
while(!rs.IsEOF())
{
rs.GetFieldValue(0,vTmp);
ix=m_lstMedia.InsertItem(i,vtos(vTmp));
rs.GetFieldValue(1,vTmp);
pflt=new float;
*pflt=vtof(vTmp);
m_lstMedia.SetItemData(ix,(DWORD)(LPVOID)pflt);
rs.MoveNext();
i++;
}
rs.Close();
if(m_lstMedia.GetItemCount()>0)
{
m_lstMedia.SetItemState(0, LVIS_SELECTED, LVIS_SELECTED);
m_iMediaItemIndex=0;
m_iMediaHotIndex=0;
}
}
catch(CDaoException * e)
{
e->ReportError();
e->Delete();
}
}
void CDlgSpan::LoadListMaterial()
{
try
{
CDaoRecordset rs;
COleVariant vTmp;
rs.m_pDatabase=&EDIBgbl::dbMaterial;//20071102 "dbSORT" 改为 "dbMaterial"
CString strSQL;
strSQL=_T("SELECT DISTINCT [Material] FROM [MechanicalOfMaterialEt] WHERE Material IN ( SELECT DISTINCT Material FROM [MechanicalOfMaterialSIGMAt] ) ");
rs.Open(dbOpenSnapshot,strSQL);
int i=0;
while(!rs.IsEOF())
{
rs.GetFieldValue(0,vTmp);
m_lstMaterial.InsertItem(i,vtos(vTmp));
rs.MoveNext();
i++;
}
rs.Close();
if(m_lstMaterial.GetItemCount()>0)
{
m_lstMaterial.SetItemState(0, LVIS_SELECTED, LVIS_SELECTED);
m_iMaterialItemIndex=0;
m_iMaterialHotIndex=0;
}
}
catch(CDaoException * e)
{
e->ReportError();
e->Delete();
}
}
void CDlgSpan::FreeListMediaData()
{
int i,c;
c=m_lstMedia.GetItemCount();
float * pflt;
for(i=0;i<c;i++)
{
pflt=(float*)(void*)m_lstMedia.GetItemData(i);
delete pflt;
m_lstMedia.SetItemData(i,0);
}
}
void CDlgSpan::OnDestroy()
{
m_strLMaxR = (_T(""));
m_strLMaxS = (_T(""));
m_strMD = (_T(""));
m_strLMaxRNew = (_T(""));
m_strLMaxSNew = (_T(""));
m_strQp = (_T(""));
m_bHighCrSteel = FALSE;
m_bPG40 = FALSE;
m_iDWItemIndex=-1;
m_iMediaItemIndex=-1;
m_iMaterialItemIndex=-1;
m_iMediaHotIndex=-1;
m_iDWHotIndex=-1;
m_iMaterialHotIndex=-1;
FreeListMediaData();
CDialog::OnDestroy();
// TODO: Add your message handler code here
m_outFont.DeleteObject();
}
void CDlgSpan::OnClose()
{
// TODO: Add your message handler code here and/or call default
CDialog::OnClose();
this->DestroyWindow();
}
void CDlgSpan::OnOK()
{
// TODO: Add extra validation here
CDialog::OnOK();
if(IsWindow(this->GetSafeHwnd()))
this->DestroyWindow();
}
void CDlgSpan::OnCancel()
{
// TODO: Add extra cleanup here
CDialog::OnCancel();
if(IsWindow(this->GetSafeHwnd()))
this->DestroyWindow();
}
void CDlgSpan::OnActivate(UINT nState, CWnd *pWndOther, BOOL bMinimized)
{
if(pWndOther==NULL) return;
if(GetWindowLong(pWndOther->GetSafeHwnd(),GWL_HINSTANCE)!=(long)::AfxGetInstanceHandle())
return;
if(nState==WA_INACTIVE)
this->PostMessage(WM_CLOSE);
}
void CDlgSpan::OnItemchangedListDw(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
// TODO: Add your control notification handler code here
int ix=pNMListView->iItem;
if(ix!=m_iDWItemIndex)
{
m_iDWItemIndex=ix;
m_iDWHotIndex=ix;
Cal();
}
*pResult = 0;
}
void CDlgSpan::OnItemchangedListMaterial(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
// TODO: Add your control notification handler code here
int ix=pNMListView->iItem;
if(ix!=m_iMaterialItemIndex)
{
m_iMaterialItemIndex=ix;
m_iMaterialHotIndex=ix;
Cal();
}
*pResult = 0;
}
void CDlgSpan::OnItemchangedListMedia(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
// TODO: Add your control notification handler code here
int ix=pNMListView->iItem;
//int ix=m_lstMedia.GetNextItem(-1,LVNI_SELECTED);
if(ix!=m_iMediaItemIndex)
{
m_iMediaItemIndex=ix;
m_iMediaHotIndex=ix;
float *pflt=(float*)(void*)m_lstMedia.GetItemData(m_iMediaItemIndex);
if(pflt!=NULL)
m_strMD.Format(_T("%g"),*pflt);
else m_strMD=_T("");
UpdateData(FALSE);
Cal();
if(ix==0)
{
((CEdit*)GetDlgItem(IDC_EDIT_MEDIADENSITY))->SetReadOnly(FALSE);
}
else
((CEdit*)GetDlgItem(IDC_EDIT_MEDIADENSITY))->SetReadOnly(TRUE);
}
*pResult = 0;
}
//DEL BOOL CDlgSpan::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
//DEL {
//DEL // TODO: Add your specialized code here and/or call the base class
//DEL NMHDR* pmh=(NMHDR*)lParam;
//DEL switch(wParam)
//DEL {
//DEL case IDC_LIST_DW:
//DEL
//DEL break;
//DEL case IDC_LIST_MATERIAL:
//DEL break;
//DEL case IDC_LIST_MEDIA:
//DEL switch(pmh->code ==
//DEL break;
//DEL }
//DEL return CDialog::OnNotify(wParam, lParam, pResult);
//DEL }
void CDlgSpan::OnHottrackListMedia(NMHDR *pNMHDR, LRESULT *pResult)
{
NM_LISTVIEW *pNMListView=(NM_LISTVIEW*)pNMHDR;
int ix=pNMListView->iItem;
//int ix=m_lstMedia.GetNextItem(-1,LVNI_SELECTED);
*pResult=0;
if(ix!=m_iMediaHotIndex)
{
float *pflt=0;
if(ix!=-1)
{
m_iMediaHotIndex=ix;
pflt=(float*)(void*)m_lstMedia.GetItemData(ix);
}
else if(m_iMediaItemIndex!=-1)
{
m_iMediaHotIndex=m_iMediaItemIndex;
pflt=(float*)(void*)m_lstMedia.GetItemData(m_iMediaItemIndex);
}
else return;
if(pflt!=NULL)
m_strMD.Format(_T("%g"),*pflt);
else m_strMD=_T("");
UpdateData(FALSE);
Cal();
}
}
void CDlgSpan::OnHottrackListMaterial(NMHDR *pNMHDR, LRESULT *pResult)
{
NM_LISTVIEW *pNMListView=(NM_LISTVIEW*)pNMHDR;
int ix=pNMListView->iItem;
if(ix!=m_iMaterialHotIndex)
{
if(ix!=-1)
m_iMaterialHotIndex=ix;
else
m_iMaterialHotIndex=m_iMaterialItemIndex;
CDlgSpan::LoadTemp();
Cal();
}
*pResult=0;
}
void CDlgSpan::OnHottrackListDw(NMHDR *pNMHDR, LRESULT *pResult)
{
NM_LISTVIEW *pNMListView=(NM_LISTVIEW*)pNMHDR;
int ix=pNMListView->iItem;
if(ix!=m_iDWHotIndex)
{
if(ix!=-1)
m_iDWHotIndex=ix;
else
m_iDWHotIndex=m_iDWItemIndex;
Cal();
}
*pResult=0;
}
//DEL void CDlgSpan::OnRadioNew()
//DEL {
//DEL // TODO: Add your control notification handler code here
//DEL this->CheckRadioButton(IDC_RADIO_NEW,IDC_RADIO_OLD,IDC_RADIO_NEW);
//DEL //if(this->m_iGS!=0)
//DEL m_iGS=0;
//DEL Cal();
//DEL }
//DEL void CDlgSpan::OnRadioOld()
//DEL {
//DEL // TODO: Add your control notification handler code here
//DEL //UpdateData();
//DEL this->CheckRadioButton(IDC_RADIO_NEW,IDC_RADIO_OLD,IDC_RADIO_OLD);
//DEL m_iGS=1;
//DEL Cal();
//DEL }
void CDlgSpan::Cal()
{
if(m_iMaterialHotIndex==-1 || m_iDWHotIndex==-1)
return;
CString strMaterial;
strMaterial=m_lstMaterial.GetItemText(m_iMaterialHotIndex,0);
float fTemp;
fTemp=_tcstod(m_strTemp,NULL);
CString strSQL;
float fS,fDw,fQp,fQw,fQi,fDensity=7850.0,fMediaDensity,fQ;
float PI=3.1416;
fMediaDensity=_tcstod(this->m_strMD,NULL);
fS=_tcstod(m_lstDW.GetItemText(m_iDWHotIndex,2),NULL);
fDw=_tcstod(m_lstDW.GetItemText(m_iDWHotIndex,1),NULL);
//fQp:unit=kgf/m;
//fQw:unit=kgf/m;
//fQi:unit=kgf/m
fQp=PI/4 * ( fDw*fDw-(fDw-2*fS)*(fDw-2*fS))*fDensity*1.0e-6;
fQw=PI/4 * (fDw-2*fS) * (fDw-2*fS)* fMediaDensity * 1.0e-6;
fQi=_tcstod(this->m_strIsoWeight,NULL);
fQ=fQp+fQw+fQi;
m_strQ.Format(_T("%g"),fQ);
m_strQp.Format(_T("%g"),fQp);
float fI;
fI=PI/64 * (pow(fDw,4) - pow(fDw-2*fS,4));
//单位mm4->cm4
fI=fI/10000.0;
float fW;
fW=PI/32*pow(fDw,3)*(1-pow((fDw-2*fS)/fDw,4));
//单位mm3->cm3
fW=fW/1000.0;
float fSigmat,fSigma100,fSigma20;
float fEt,fE100,fE20;
//fEt:unit=kN/mm2
modPHScal::StressOfMaterial(strMaterial,fTemp,fEt,1,fDensity);
//fSigmat:unit=kgf/cm2
modPHScal::StressOfMaterial(strMaterial,fTemp,fSigmat,0);
float LmaxROld,LmaxRNew;
float LmaxSOld,LmaxSNew;
//新管规,fQ:unit=kN/m
LmaxSNew=0.4336*sqrt(fW/(fQ*EDIBgbl::kgf2N/1000));
LmaxRNew=0.2118*pow(fEt*fI/(fQ*EDIBgbl::kgf2N/1000),0.25f);
float fPHI;//高铬钢0.7碳素钢0.9
if(m_bHighCrSteel)
fPHI=0.7;
else
fPHI=0.9;
if(m_bPG40)
LmaxSOld=2*sqrt(fW*fPHI*(fSigmat/100)/fQ);
else
LmaxSOld=2.24*sqrt(fW*fPHI*(fSigmat/100)/fQ);//Pg<=40
LmaxROld=0.0241*pow((fEt*1000.0/EDIBgbl::kgf2N*100)*fI/fQ,(float)1.0/3.0);
//m_iGS=this->GetCheckedRadioButton(IDC_RADIO_NEW,IDC_RADIO_OLD)-IDC_RADIO_NEW;
m_strLMaxR.Format(_T("%.2fm"),LmaxROld);
m_strLMaxS.Format(_T("%.2fm"),LmaxSOld);
m_strLMaxRNew.Format(_T("%.2fm"),LmaxRNew);
m_strLMaxSNew.Format(_T("%.2fm"),LmaxSNew);
UpdateData(FALSE);
}
void CDlgSpan::LoadTemp()
{
try
{
if(m_iMaterialHotIndex==-1 || m_iDWHotIndex==-1)
return;
UpdateData();
CString strMaterial;
strMaterial=m_lstMaterial.GetItemText(m_iMaterialHotIndex,0);
m_comboTemp.ResetContent();
CDaoRecordset rs;
COleVariant vTmp;
CString strSQL;
strSQL=_T("SELECT DISTINCT [t] FROM [MechanicalOfMaterialEt] WHERE material=\'") + strMaterial + _T("\'ORDER BY [t]");
rs.m_pDatabase=&EDIBgbl::dbMaterial;//20071102 "dbSORT" 改为 ""
rs.Open(dbOpenSnapshot,strSQL);
while(!rs.IsEOF())
{
rs.GetFieldValue(0,vTmp);
m_comboTemp.AddString(vtos(vTmp));
rs.MoveNext();
}
rs.Close();
if(m_comboTemp.GetCount()>0)
m_comboTemp.SetCurSel(0);
}
catch(CDaoException * e)
{
e->ReportError();
e->Delete();
}
}
void CDlgSpan::OnChangeEditMediadensity()
{
// TODO: If this is a RICHEDIT control, the control will not
// send this notification unless you override the CDialog::OnInitDialog()
// function and call CRichEditCtrl().SetEventMask()
// with the ENM_CHANGE flag ORed into the mask.
// TODO: Add your control notification handler code here
((CEdit*)GetDlgItem(IDC_EDIT_MEDIADENSITY))->GetWindowText(m_strMD);
if(m_iMediaItemIndex==0)
{
float * pflt=(float*)(void*)m_lstMedia.GetItemData(0);
*pflt=_tcstod(m_strMD,NULL);
}
Cal();
}
void CDlgSpan::OnChangeEditIsoweight()
{
// TODO: If this is a RICHEDIT control, the control will not
// send this notification unless you override the CDialog::OnInitDialog()
// function and call CRichEditCtrl().SetEventMask()
// with the ENM_CHANGE flag ORed into the mask.
// TODO: Add your control notification handler code here
((CEdit*)GetDlgItem(IDC_EDIT_ISOWEIGHT))->GetWindowText(m_strIsoWeight);
Cal();
}
void CDlgSpan::OnEditchangeComboTemp()
{
// TODO: Add your control notification handler code here
m_comboTemp.GetWindowText(m_strTemp);
//m_comboTemp.SetWindowText(m_strTemp);
Cal();
}
void CDlgSpan::OnSelchangeComboTemp()
{
// TODO: Add your control notification handler code here
CString strTmp;
m_comboTemp.GetLBText(m_comboTemp.GetCurSel(),m_strTemp);
m_comboTemp.SetWindowText(m_strTemp);
Cal();
}
void CDlgSpan::OnCheckHighCr()
{
// TODO: Add your control notification handler code here
m_bHighCrSteel=(!m_bHighCrSteel);
Cal();
}
void CDlgSpan::OnCheckPg40()
{
// TODO: Add your control notification handler code here
m_bPG40=(!m_bPG40);
UpdateData(false);
Cal();
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/uesoft/AutoPHS.git
git@gitee.com:uesoft/AutoPHS.git
uesoft
AutoPHS
AutoPHS
CAE

搜索帮助

D67c1975 1850385 1daf7b77 1850385