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

📄 page1.cpp

📁 UG调用的动态链接数据库
💻 CPP
字号:
// Page1.cpp : implementation file
//

#include "stdafx.h"
#include "HiCut.h"
#include "Page1.h"
#include "Page5.h"
#include "Data_Parameter.h"

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

/////////////////////////////////////////////////////////////////////////////
// CPage1 property page

IMPLEMENT_DYNCREATE(CPage1, CPropertyPage)

CPage1::CPage1() : CPropertyPage(CPage1::IDD)
{
	//{{AFX_DATA_INIT(CPage1)
	m_cutdepth = 0;
	m_cutspeed = 0;
	m_feedrate = 0;
	m_stepover = 0;
	ndel=0;
	m_kexindu = _T("");
	//}}AFX_DATA_INIT
}

CPage1::~CPage1()
{
}

void CPage1::DoDataExchange(CDataExchange* pDX)
{
	CPropertyPage::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CPage1)
	DDX_Control(pDX, IDC_COMBO_TOOLNAME, m_com_toolname);
	DDX_Control(pDX, IDC_COMBO_TOOLPATH, m_com_toolpath);
	DDX_Control(pDX, IDC_COMBO_SURFACE, m_com_surface);
	DDX_Control(pDX, IDC_COMBO_MATERIAL, m_com_material);
	DDX_Control(pDX, IDC_COMBO_MACHINE, m_com_machine);
	DDX_Text(pDX, IDC_EDIT_CUTDEPTH, m_cutdepth);
	DDX_Text(pDX, IDC_EDIT_CUTSPEED, m_cutspeed);
	DDX_Text(pDX, IDC_EDIT_FEEDRATE, m_feedrate);
	DDX_Text(pDX, IDC_EDIT_STEPOVER, m_stepover);
	DDX_Text(pDX, IDC_EDIT_KEXINDU, m_kexindu);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CPage1, CPropertyPage)
	//{{AFX_MSG_MAP(CPage1)
	ON_BN_CLICKED(IDC_BUTTON1, OnOptimize)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()


/////////////////////////////////////////////////////////////////////////////
// CPage1 message handlers

void CPage1::OnOptimize() 
{
	UpdateData(TRUE);
	int nfound=0;
	CString m_machine,m_material,m_toolpath,m_toolname,m_surface;
	CString s_cutdepth,s_cutspeed,s_feedrate,s_stepover;
	m_com_machine.GetWindowText(m_machine);
	m_com_material.GetWindowText(m_material);
	m_com_toolpath.GetWindowText(m_toolpath);
	m_com_toolname.GetWindowText(m_toolname);
	m_com_surface.GetWindowText(m_surface);

	CData_Parameter *m_recordset = new CData_Parameter(&m_database);
	CString strSQL;	
    strSQL.Format("select * from 切削参数表");
	m_recordset->Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
    

	for(m_recordset->MoveFirst();!(m_recordset->IsEOF());)
	{
        nfound=0;
		if(m_recordset->m_column2==m_machine&&m_recordset->m_column3==m_material&&\
		m_recordset->m_column4==m_toolname\
		&&m_recordset->m_column5==m_surface&&m_recordset->m_column6==m_toolpath\
		&&(!m_recordset->IsEOF()))\
		{
	    m_cutspeed=m_recordset->m_column7;
		m_cutdepth=m_recordset->m_column8;
		m_feedrate=m_recordset->m_column9; 
		m_stepover=m_recordset->m_column10;
		m_kexindu =m_recordset->m_column11;
		m_database.Close();
		UpdateData(FALSE);
		nfound=1;
		ndel=1;
		return;
		}
	    else
		m_recordset->MoveNext();
	}
		if(nfound==0)
		{
			MessageBox("查无记录");
			ndel=0;
		}	
}

BOOL CPage1::OnInitDialog()
{
    CDialog::OnInitDialog();
	this->ShowCombox();
    return TRUE;
}

/*void CPage1::OnSelchangeComboTooltype() 
{
	//清空
	int count,count1;
	count=m_com_tooldiameter.GetCount();
	for(count1=0;count1<count;count1++)
		m_com_tooldiameter.DeleteString(0);
	//
	int i,j;
	CString s_tooltype,fieldstr,fieldstr1,fieldstr2,fieldstr3;
	CData_Parameter *m_recordset = new CData_Parameter(&m_database);
	m_recordset->Open(AFX_DB_USE_DEFAULT_TYPE,"[切削参数表]");
	m_com_tooltype.GetWindowText(s_tooltype);
	if(n==1)
	{
		if(s_tooltype.Compare(m_recordset->m_column4)==0)
			fieldstr.Format("%s",m_recordset->m_column5);
			m_com_tooldiameter.AddString(fieldstr);
	}
	else
	{
    for(i=0;i<n;i++)
	{			
			m_recordset->MoveFirst();
			m_recordset->Move(i);
			fieldstr2.Format("%s",m_recordset->m_column4);
		    fieldstr.Format("%.4f",m_recordset->m_column5);
			if(s_tooltype.Compare(fieldstr2)==0)
			{
				int key=0;
		        for(j=0;j<i;j++)
				{
			        m_recordset->MoveFirst();
		            m_recordset->Move(j);
                    fieldstr1.Format("%.4f",m_recordset->m_column5);
                    fieldstr3.Format("%s",m_recordset->m_column4);
			        if(s_tooltype.Compare(fieldstr3)==0)
					{
						if(fieldstr.Compare(fieldstr1)==0)
                        key=1;
					}
				    
				}
				if(key==0)
			    m_com_tooldiameter.AddString(fieldstr);

			}			

	}			
	}
	m_database.Close();	
}
*/
	// TODO: Add your control notification handler code here
	

void CPage1::ShowCombox()
{
	int i,j;
    CString Fieldstr,Fieldstr1;
    
/////对Combox进行初始化设置
	CData_Parameter *m_recordset = new CData_Parameter(&m_database);
	m_recordset->Open(AFX_DB_USE_DEFAULT_TYPE,"[切削参数表]");
//计算总共的记录数
    m_recordset->MoveFirst();
	if(m_recordset->IsEOF())
		n=1;
	else
	{
		for(n=0;!(m_recordset->IsEOF());n++)//记录的条数
		{
		m_recordset->MoveNext();
 	
		}
	}
//com_machine	
	m_com_machine.ResetContent();
	m_recordset->MoveFirst();
	Fieldstr.Format("%s",m_recordset->m_column2);
	m_com_machine.AddString(Fieldstr);	
	if(n>=2)
	{
		for(i=1;i<n;i++)
		{
			int key=0;
			m_recordset->MoveFirst();
			m_recordset->Move(i);
		    Fieldstr.Format("%s",m_recordset->m_column2);
		    for(j=0;j<i;j++)
			{
			 m_recordset->MoveFirst();
		     m_recordset->Move(j);
             Fieldstr1.Format("%s",m_recordset->m_column2);
			 if(Fieldstr.Compare(Fieldstr1)==0)
				 key=1;
			}
			if(key==0)
				m_com_machine.AddString(Fieldstr);
		}
	}
//com_material
	m_com_material.ResetContent();
	m_recordset->MoveFirst();
	Fieldstr.Format("%s",m_recordset->m_column3);
	m_com_material.AddString(Fieldstr);	
	if(n>=2)
	{
		for(i=1;i<n;i++)
		{
			int key=0;
			m_recordset->MoveFirst();
			m_recordset->Move(i);
		    Fieldstr.Format("%s",m_recordset->m_column3);
		    for(j=0;j<i;j++)
			{
			 m_recordset->MoveFirst();
		     m_recordset->Move(j);
             Fieldstr1.Format("%s",m_recordset->m_column3);
			 if(Fieldstr.Compare(Fieldstr1)==0)
				 key=1;
			}
			if(key==0)
				m_com_material.AddString(Fieldstr);
		}
	}
//com_surface
	m_com_surface.ResetContent();
	m_recordset->MoveFirst();
	Fieldstr.Format("%s",m_recordset->m_column5);
	m_com_surface.AddString(Fieldstr);	
	if(n>=2)
	{
		for(i=1;i<n;i++)
		{
			int key=0;
			m_recordset->MoveFirst();
			m_recordset->Move(i);
		    Fieldstr.Format("%s",m_recordset->m_column5);
		    for(j=0;j<i;j++)
			{
			 m_recordset->MoveFirst();
		     m_recordset->Move(j);
             Fieldstr1.Format("%s",m_recordset->m_column5);
			 if(Fieldstr.Compare(Fieldstr1)==0)
				 key=1;
			}
			if(key==0)
				m_com_surface.AddString(Fieldstr);
		}
	}
//com_toolpath
	m_com_toolpath.ResetContent();
	m_recordset->MoveFirst();
	Fieldstr.Format("%s",m_recordset->m_column6);
	m_com_toolpath.AddString(Fieldstr);	
	if(n>=2)
	{
		for(i=1;i<n;i++)
		{
			int key=0;
			m_recordset->MoveFirst();
			m_recordset->Move(i);
		    Fieldstr.Format("%s",m_recordset->m_column6);
		    for(j=0;j<i;j++)
			{
			 m_recordset->MoveFirst();
		     m_recordset->Move(j);
             Fieldstr1.Format("%s",m_recordset->m_column6);
			 if(Fieldstr.Compare(Fieldstr1)==0)
				 key=1;
			}
			if(key==0)
				m_com_toolpath.AddString(Fieldstr);
		}
	}
//com_toolname
	m_com_toolname.ResetContent();
	m_recordset->MoveFirst();
	Fieldstr.Format("%s",m_recordset->m_column4);
	m_com_toolname.AddString(Fieldstr);	

	if(n>=2)
	{
		for(i=1;i<n;i++)
		{
			int key=0;
			m_recordset->MoveFirst();
			m_recordset->Move(i);
		    Fieldstr.Format("%s",m_recordset->m_column4);
		    for(j=0;j<i;j++)
			{
			 m_recordset->MoveFirst();
		     m_recordset->Move(j);
             Fieldstr1.Format("%s",m_recordset->m_column4);
			 if(Fieldstr.Compare(Fieldstr1)==0)
				 key=1;
			}
			if(key==0)
				m_com_toolname.AddString(Fieldstr);
		}
	}
	m_database.Close();


}

BOOL CPage1::OnSetActive() 
{
    this->ShowCombox();
	return CPropertyPage::OnSetActive();
}

⌨️ 快捷键说明

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