📄 clientareadlg.cpp
字号:
#include <qtable.h>#include <qtextbrowser.h>#include "clientareadlg.h"#include "baseclass/publicclass.h"#include <qpopupmenu.h> #include <qcursor.h> extern CPublicClass g_PublicClass;CClientAreaDlg::CClientAreaDlg( QWidget * parent, const char * name) :CEditBaseDialog(parent,name)//:QWidget(parent,name){ m_Splitter=new QSplitter(this); m_Splitter->setOrientation(Qt::Vertical); m_Splitter->setOpaqueResize(TRUE); m_DeviceListView = new CListView(m_Splitter,""); m_MsgInfo = new QTabWidget(m_Splitter,""); QTextBrowser *txb0=new QTextBrowser(this,""); txb0->setTextFormat(Qt::AutoText); QTextBrowser *txb1=new QTextBrowser(this,""); txb1->setTextFormat(Qt::AutoText); QTextBrowser *txb2=new QTextBrowser(this,""); txb2->setTextFormat(Qt::AutoText); m_MsgInfo->addTab(txb0,_T("消息日志")); m_MsgInfo->addTab(txb1,_T("接收报文")); m_MsgInfo->addTab(txb2,_T("发送报文")); connect(m_DeviceListView,SIGNAL(rightButtonClicked(QListViewItem *, const QPoint &, int)), this, SLOT(on_RightButtonClicked(QListViewItem *, const QPoint &, int))); InitDeviceListHeader(); m_iEquipNo = 0;}void CClientAreaDlg::InitDeviceListHeader(){ m_DeviceListView->addColumn(_T("编号"),120); m_DeviceListView->addColumn(_T("名称"),180); m_DeviceListView->addColumn(_T("状态"),80); m_DeviceListView->addColumn(_T("通讯方式"),80); m_DeviceListView->addColumn(_T("通讯状态"),80); m_DeviceListView->setRootIsDecorated( TRUE ); m_DeviceListView->setTreeStepSize( 20 ); }void CClientAreaDlg::on_RightButtonClicked(QListViewItem* item, const QPoint& mousePoint, int button){ if (!item || mousePoint.x() < 0 || button < 0) return; CListViewItem* pItem = (CListViewItem*)item; if (!pItem) return; QString szKey = pItem->GetKeyIndexText(); g_PublicClass.m_NodeManage.FindDeviceNo(szKey,m_iEquipNo); QPopupMenu* pMenu = new QPopupMenu(); pMenu->insertItem(_T("显示报文"), this, SLOT(onActiveFunction(int)), 0, 1); pMenu->insertItem(_T("停止显示"), this, SLOT(onActiveFunction(int)), 0, 2); pMenu->exec(QCursor::pos());}void CClientAreaDlg::onActiveFunction(int id){ switch (id) { case 1://显示报文 { g_PublicClass.m_MonitorData.m_SrcFlag = 3; g_PublicClass.m_MonitorData.m_MachineNo = m_iEquipNo; } break; case 2://停止显示 { g_PublicClass.m_MonitorData.m_SrcFlag = 0; g_PublicClass.m_MonitorData.m_MachineNo = 0; } break; default: break; }}CClientAreaDlg::~CClientAreaDlg(){ return;}void CClientAreaDlg::resizeEvent ( QResizeEvent *e){ m_Splitter->setGeometry(QRect::QRect(m_Splitter->x(),m_Splitter->y(),e->size().width(),e->size().height()));} //设定滑动的左或顶的宽度void CClientAreaDlg::setTopHeight(int iHeight,QWidget* pWnd){ QValueList<int> topl; if(iHeight<=0) return; if(pWnd==NULL) return; QSplitter *p=(QSplitter *)pWnd; topl.append(iHeight);p->setSizes(topl);}//////////////////////////////////////////////////////////////////////////////////////////////////////////////void CClientAreaDlg::SetMsgInfo(int flag,QString sMsg){ if(flag==0) SetMsgMainModule(sMsg);}void CClientAreaDlg::SetMsgMainModule(QString sMsg){ QTextBrowser *txb=(QTextBrowser*)m_MsgInfo->page(0); txb->append(sMsg);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -