📄 myfinddlg.cpp
字号:
// MyFindDlg.cpp: implementation of the MyFindDlg class.
//
//////////////////////////////////////////////////////////////////////
#include "MyFindDlg.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
MyFindDlg::MyFindDlg(QWidget * parent, const char * name)
{
setCaption("Find");
setMaximumSize( 400, 130 );
setFont(QFont("Arial",10));
QLabel* fw=new QLabel("Find What",this);
m_fwedit=new QLineEdit(this);
QPushButton* fbut=new QPushButton("Find First",this);
QPushButton* fnbut=new QPushButton("Find Next",this);
m_cancelbut=new QPushButton("Cancel",this);
m_chkcase=new QCheckBox("Case Sensitive",this);
fw->setGeometry(20,25,120,20);
m_fwedit->setGeometry(100,25,180,20);
fbut->setGeometry(300,25,100,20);
fnbut->setGeometry(300,50,100,20);
m_cancelbut->setGeometry(300,75,100,20);
m_chkcase->setGeometry(130,50,120,20);
m_icharAt=m_iparaAt=0;
connect(m_cancelbut,SIGNAL(clicked()),this,SLOT(OnCancel()));
connect(fbut,SIGNAL(clicked()),this,SLOT(findString()));
connect(fnbut,SIGNAL(clicked()),this,SLOT(findNextString()));
}
MyFindDlg::~MyFindDlg()
{
}
void MyFindDlg::setEdit(QTextEdit *txtEdit)
{
m_edit=txtEdit;
}
void MyFindDlg::OnCancel()
{
reject();
}
bool MyFindDlg::findString()
{
m_icharAt=m_iparaAt=0;
return findNextString();
}
bool MyFindDlg::findNextString()
{
assert(m_edit);
QString sTmp=m_fwedit->text();
bool bFind=FALSE;
while (!(bFind=m_edit->find(sTmp,m_chkcase->isChecked(),FALSE,TRUE,&(m_iparaAt),&m_icharAt))
&& m_iparaAt < m_edit->paragraphs()){
m_iparaAt++;
}
if (!bFind){
QMessageBox::information(this,"No Found",
"Don't found the string what you want!");
return FALSE;
}
m_icharAt+=sTmp.length();
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -