📄 tempdlg.cpp
字号:
TreeCtrlItem.item.lParam=132;
TreeCtrlItem.item.pszText="Tst Active";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="BER Loss";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="SDMS";
m_tree.InsertItem(&TreeCtrlItem);
//---------------------------------------------
hTreeItem=tempTreeItem1;
TreeCtrlItem.hParent=hTreeItem;
TreeCtrlItem.item.lParam=10;
TreeCtrlItem.item.pszText="Test";
hTreeItem=m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.hParent=hTreeItem;
TreeCtrlItem.item.lParam=133;
TreeCtrlItem.item.pszText="Ter Loopbck";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="Sat Loopbck";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="Mod BER";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="Demod BER";
m_tree.InsertItem(&TreeCtrlItem);
//---------------------------------------------
hTreeItem=tempTreeItem1;
TreeCtrlItem.hParent=hTreeItem;
TreeCtrlItem.item.lParam=10;
TreeCtrlItem.item.pszText="SDMS";
hTreeItem=m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.hParent=hTreeItem;
TreeCtrlItem.item.lParam=134;
TreeCtrlItem.item.pszText="IP Addr";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="Netwrk Mask";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="MAC Addr";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="Options";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="Version";
m_tree.InsertItem(&TreeCtrlItem);
TreeCtrlItem.item.pszText="Serial#";
m_tree.InsertItem(&TreeCtrlItem);
//串口初始化
m_com.SetCommPort(1); //选择COM1
m_com.SetInBufferSize(1024); //设置输入缓冲区的大小,Bytes
m_com.SetOutBufferSize(1024); //设置输入缓冲区的大小,Bytes
if(!m_com.GetPortOpen()) //打开串口
m_com.SetPortOpen(TRUE);
m_com.SetInputMode(1); //设置输入方式为二进制方式
m_com.SetSettings("9600,n,8,1"); //设置波特率等参数
m_com.SetRThreshold(1); //为1表示有一个字符引发一个事件
m_com.SetInputLen(0);
return TRUE; // return TRUE unless you set the focus to a control
}
void CTempDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
// If you add a minimize button to your dialog, you will need the code below
// to draw the icon. For MFC applications using the document/view model,
// this is automatically done for you by the framework.
void CTempDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting
SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
// The system calls this to obtain the cursor to display while the user drags
// the minimized window.
HCURSOR CTempDlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}
void CTempDlg::OnSelchangedTree1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
// TODO: Add your control notification handler code here
CString strRef;
//CString strInfo; //选定项的文字;改为全局,记录位置用
HTREEITEM CurItem=m_tree.GetSelectedItem();
TV_ITEM TreeCtrlItem;
TreeCtrlItem.hItem=CurItem;
m_tree.GetItem(&TreeCtrlItem);
strInfo=m_tree.GetItemText(m_tree.GetSelectedItem());
CStatic * pStatic=(CStatic *)GetDlgItem(IDC_DISP_STATIC);
CEdit * pEdit=(CEdit *)GetDlgItem(IDC_DATA_EDIT);
CComboBox * pComb=(CComboBox *)GetDlgItem(IDC_DATA_COMB);
long CurlParam=TreeCtrlItem.lParam;
if(CurlParam==1||CurlParam==10)
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_HIDE);
this->GetDlgItem(IDC_DISP_STATIC)->SetWindowText(" ");
this->GetDlgItem(IDC_CHANGE_STATIC)->SetWindowText(" ");
m_read.SetWindowText(" ");
return;
}
else
this->GetDlgItem(IDC_CHANGE_STATIC)->SetWindowText("改为:");
switch(CurlParam)
{
case 100:
commandArray[4]=0x00;
commandArray[6]=0x00;
if(strInfo=="Unit ID")
{
pEdit->ShowWindow(SW_SHOW);
pComb->ShowWindow(SW_HIDE);
SendToCom();
}
else
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_HIDE);
SendToCom();
}
break;
case 101:
commandArray[4]=0x01;
commandArray[6]=0x00;
if(strInfo=="Modem")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("Disabled");
m_dataComb.AddString("Demod Only");
m_dataComb.AddString("Mod Only");
m_dataComb.AddString("Mod & Demod");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Store")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("1");
m_dataComb.AddString("2");
m_dataComb.AddString("3");
m_dataComb.AddString("4");
m_dataComb.AddString("5");
m_dataComb.AddString("6");
m_dataComb.AddString("7");
m_dataComb.AddString("8");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Recall")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("0=Factory");
m_dataComb.AddString("1");
m_dataComb.AddString("2");
m_dataComb.AddString("3");
m_dataComb.AddString("4");
m_dataComb.AddString("5");
m_dataComb.AddString("6");
m_dataComb.AddString("7");
m_dataComb.AddString("8");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else
{
pEdit->ShowWindow(SW_SHOW);
pComb->ShowWindow(SW_HIDE);
SendToCom();
}
break;
case 102:
//02h
commandArray[4]=0x02;
commandArray[6]=0x00;
if(strInfo=="Mode")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("Disabled");
m_dataComb.AddString("Read Only");
m_dataComb.AddString("Full Access");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Entry")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("Quick");
m_dataComb.AddString("Edit Only");
m_dataComb.AddString("Confirm");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="LCD Actve")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("Off");
m_dataComb.AddString("1/3");
m_dataComb.AddString("2/3");
m_dataComb.AddString("Full");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="LCD Idle")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("Off");
m_dataComb.AddString("1/3");
m_dataComb.AddString("2/3");
m_dataComb.AddString("Full");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="LCD Cntst")
{
pEdit->ShowWindow(SW_SHOW);
pComb->ShowWindow(SW_HIDE);
SendToCom();
}
else if(strInfo=="Activity")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("None");
m_dataComb.AddString("Beep");
m_dataComb.AddString("Blink");
m_dataComb.AddString("Beep & Blink");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
break;
case 103:
//03h
commandArray[4]=0x03;
commandArray[6]=0x00;
if(strInfo=="Mode")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("Disabled");
m_dataComb.AddString("Read Only");
m_dataComb.AddString("Full Access");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Rate")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("300 bps");
m_dataComb.AddString("600 bps");
m_dataComb.AddString("1200 bps");
m_dataComb.AddString("2400 bps");
m_dataComb.AddString("4800 bps");
m_dataComb.AddString("9600 bps");
m_dataComb.AddString("19200 bps");
m_dataComb.AddString("38400 bps");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Format")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("N,8,1");
m_dataComb.AddString("E,8,1");
m_dataComb.AddString("O,8,1");
m_dataComb.AddString("M,8,1");
m_dataComb.AddString("S,8,1");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Power")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("IR Low");
m_dataComb.AddString("IR Medium");
m_dataComb.AddString("IR High");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Activity")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("None");
m_dataComb.AddString("Beep");
m_dataComb.AddString("Blink");
m_dataComb.AddString("Beep & Blink");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
break;
case 104:
//04h
commandArray[4]=0x04;
commandArray[6]=0x00;
if(strInfo=="Mode")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("Disabled");
m_dataComb.AddString("Read Only");
m_dataComb.AddString("Full Access");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Protocol")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("VT100");
m_dataComb.AddString("Quiet VT100");
m_dataComb.AddString("Binary Packet");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Address")
{
pEdit->ShowWindow(SW_SHOW);
pComb->ShowWindow(SW_HIDE);
SendToCom();
}
else if(strInfo=="Rate")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("300 bps");
m_dataComb.AddString("600 bps");
m_dataComb.AddString("1200 bps");
m_dataComb.AddString("2400 bps");
m_dataComb.AddString("4800 bps");
m_dataComb.AddString("9600 bps");
m_dataComb.AddString("19200 bps");
m_dataComb.AddString("38400 bps");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Format")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
m_dataComb.ResetContent();
m_dataComb.AddString("N,8,1");
m_dataComb.AddString("E,8,1");
m_dataComb.AddString("O,8,1");
m_dataComb.AddString("M,8,1");
m_dataComb.AddString("S,8,1");
m_dataComb.SetCurSel(0);
numComb=0;
SendToCom();
}
else if(strInfo=="Port")
{
pEdit->ShowWindow(SW_HIDE);
pComb->ShowWindow(SW_SHOW);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -