📄 sqlinputview.cpp
字号:
// SqlInputView.cpp : implementation file
//
#include "stdafx.h"
#include "MySqlPlus.h"
#include "SqlInputView.h"
#include "mainfrm.h"
#include "showResultView.h"
#include "MySqlPlusDoc.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSqlInputView
IMPLEMENT_DYNCREATE(CSqlInputView, CEditView)
CSqlInputView::CSqlInputView()
{
}
CSqlInputView::~CSqlInputView()
{
}
BEGIN_MESSAGE_MAP(CSqlInputView, CEditView)
//{{AFX_MSG_MAP(CSqlInputView)
ON_WM_KEYUP()
ON_COMMAND(ID_CONNECT, OnConnect)
ON_WM_DESTROY()
ON_WM_CLOSE()
ON_WM_ACTIVATE()
ON_WM_KILLFOCUS()
ON_WM_CREATE()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSqlInputView drawing
void CSqlInputView::OnDraw(CDC* /*pDC*/)
{
// CDocument* pDoc = GetDocument();
// TODO: add draw code here
}
/////////////////////////////////////////////////////////////////////////////
// CSqlInputView diagnostics
#ifdef _DEBUG
void CSqlInputView::AssertValid() const
{
CEditView::AssertValid();
}
void CSqlInputView::Dump(CDumpContext& dc) const
{
CEditView::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CSqlInputView message handlers
void CSqlInputView::OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags)
{
if(nChar == VK_F5)
execSql();
CEditView::OnKeyUp(nChar, nRepCnt, nFlags);
}
void CSqlInputView::execSql()
{
CString ss;
_variant_t fieldCount;
VariantInit (&fieldCount);
this->GetEditCtrl ().GetWindowText (ss);
CMainFrame* MainFrame=(CMainFrame*)this->GetParent()->GetParent();
CShowResultView* View=(CShowResultView*)MainFrame->m_wndSplitter.GetPane(0,0);
try
{
MainFrame->m_commandptr->CommandType =adCmdText;
MainFrame->m_commandptr ->CommandText =(_bstr_t)ss;
MainFrame->m_pUserSet = MainFrame->m_commandptr->Execute (&fieldCount,NULL,adCmdUnknown);
View->ShowResult(fieldCount.lVal);
VariantClear (&fieldCount);
}
catch(...)
{
View->ShowError ();
}
}
BOOL CSqlInputView::Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext)
{
return CWnd::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext);
}
void CSqlInputView::OnConnect()
{
CMainFrame* MainFrame=(CMainFrame*)this->GetParent()->GetParent();
CShowResultView* View=(CShowResultView*)MainFrame->m_wndSplitter.GetPane(0,0);
View->PostMessage (WM_COMMAND,ID_CONNECT);
}
CMySqlPlusDoc * CSqlInputView::GetDocument()
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CMySqlPlusDoc)));
return (CMySqlPlusDoc*)m_pDocument;
}
int CSqlInputView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CEditView::OnCreate(lpCreateStruct) == -1)
return -1;
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -