亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? proceduresdlg.cpp

?? Interactive SQL Tool
?? CPP
字號(hào):
// ProceduresDlg.cpp : implementation file
//

#include "stdafx.h"
#include "QryTool.h"
#include "ProceduresDlg.h"
#include "MainFrm.h"
#include "ChildFrm.h"

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

/////////////////////////////////////////////////////////////////////////////
// CProceduresDlg dialog

CProceduresDlg::CProceduresDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CProceduresDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CProceduresDlg)
	m_strSearch = _T("");
	//}}AFX_DATA_INIT

	m_nSelectedItem = 0;
	m_bSort = true;
}

void CProceduresDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CProceduresDlg)
	DDX_Control(pDX, IDC_LIST1, m_ctrlList);
	DDX_Text(pDX, IDC_SEARCH, m_strSearch);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CProceduresDlg, CDialog)
	//{{AFX_MSG_MAP(CProceduresDlg)
	ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1)
	ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST1, OnItemchangedList1)
	ON_NOTIFY(LVN_COLUMNCLICK, IDC_LIST1, OnColumnclickList1)
	ON_EN_CHANGE(IDC_SEARCH, OnChangeSearch)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CProceduresDlg message handlers

BOOL CProceduresDlg::OnInitDialog() 
{
	CWaitCursor wait;

	CMainFrame* pFrame = (CMainFrame*)AfxGetMainWnd();
	ASSERT(pFrame);
	m_pChildFrame = (CChildFrame*)pFrame->MDIGetActive();
	m_pChildFrame->m_wndStatusBar.SetPaneText(0, _T("Please wait..."));
	
	CDialog::OnInitDialog();
	
	LV_COLUMN lvcColumn;
	lvcColumn.mask = LVCF_FMT | LVCF_SUBITEM | LVCF_TEXT | LVCF_WIDTH;
	lvcColumn.fmt = LVCFMT_LEFT;
	CRect rect;
	m_ctrlList.GetClientRect(&rect);
	int nWidth = rect.Size().cx/3;
	lvcColumn.cx = nWidth;
	lvcColumn.pszText = _T("Name");
	lvcColumn.iSubItem = 0;
	m_ctrlList.InsertColumn(0, &lvcColumn);

	lvcColumn.cx = nWidth;
	lvcColumn.pszText = _T("Schema");
	lvcColumn.iSubItem = 1;
	m_ctrlList.InsertColumn(1, &lvcColumn);

	lvcColumn.cx = nWidth;
	lvcColumn.pszText = _T("Catalog");
	lvcColumn.iSubItem = 2;
	m_ctrlList.InsertColumn(2, &lvcColumn);

	if(!PopulateList())
		SendMessage(WM_CLOSE);
	else
	{
		m_ctrlList.SetFullRowSel(TRUE);
		UpdateData(FALSE);
	}
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

bool CProceduresDlg::PopulateList()
{
	bool bRet = true;
	try
	{
		ADODB::_RecordsetPtr ptrRS = m_pChildFrame->m_ptrConnection->OpenSchema(
				ADODB::adSchemaProcedures);
		if(!ptrRS->adoBOF)
		{
			CString sName, sSchema, sCatalog;
			int nPos = -1;
			HRESULT hr = S_OK;
			int nIndex = 0;
			while(!ptrRS->adoEOF)
			{
				sName = CHelpers::CrackStrVariant(ptrRS->
					GetCollect(L"PROCEDURE_NAME"));
				nPos = sName.Find(';');
				if(nPos != -1)
					sName = sName.Left(nPos);
				if(sName.Find(' ') != -1) // MS SQL Server scenario
					sName = "[" + sName + "]";
				// Alternatively...
				sSchema = CHelpers::CrackStrVariant(ptrRS->Fields->
					GetItem(_variant_t((long)1))->Value);
				sCatalog = CHelpers::CrackStrVariant(ptrRS->Fields->
					GetItem(_variant_t((long)0))->Value);

				CHelpers::Insert(&m_ctrlList, sName + "|" + sSchema + "|" +
					sCatalog + "|", -1, nIndex++);

				hr = ptrRS->MoveNext();
				if(FAILED(hr))
					_com_issue_error(hr);
			}

			m_ctrlList.SetItemState(0, LVIS_SELECTED | LVIS_FOCUSED,
					LVIS_SELECTED | LVIS_FOCUSED);
		}
	}
	catch(const _com_error& e)
	{
		bRet = false;

		CString sMsg = m_pChildFrame->GetProviderError();
		if(sMsg.IsEmpty())
			sMsg = m_pChildFrame->GetComError(e);

		AfxMessageBox(sMsg);
	}
	catch(...)
	{
		bRet = false;

		AfxMessageBox(_T("Errors occurred."));
	}

	if(!m_ctrlList.GetItemCount())
	{
		GetDlgItem(IDOK)->EnableWindow(FALSE);
		GetDlgItem(IDCANCEL)->SetWindowText(_T("&Close"));
	}

	return bRet;
}

void CProceduresDlg::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	CWaitCursor wait;

	if(GetDlgItem(IDOK)->IsWindowEnabled())
		OnOK();

	*pResult = 0;
}

void CProceduresDlg::OnOK() 
{
	m_strProcedureName = m_ctrlList.GetItemText(m_nSelectedItem, 0);
	
	CDialog::OnOK();
}

void CProceduresDlg::OnItemchangedList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;

	if(pNMListView->uNewState)
		m_nSelectedItem = pNMListView->iItem;
	
	*pResult = 0;
}

void CProceduresDlg::OnColumnclickList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	CWaitCursor wait;

	NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;

	CSortColumn sort(&m_ctrlList, pNMListView->iSubItem, false);
	sort.Sort(m_bSort = !m_bSort);
	m_nSelectedItem = m_ctrlList.GetNextItem(-1, LVNI_SELECTED);

	*pResult = 0;
}

void CProceduresDlg::OnChangeSearch() 
{
	UpdateData();

	LVFINDINFO findInfo;
	findInfo.flags = LVFI_PARTIAL | LVFI_STRING;
	findInfo.psz = (LPCTSTR)m_strSearch;
	int nItem = m_ctrlList.FindItem(&findInfo);
	m_ctrlList.SetItemState(nItem, LVIS_SELECTED, LVIS_SELECTED);
	m_ctrlList.EnsureVisible(nItem, TRUE);
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产人成亚洲第一网站在线播放 | 欧美综合一区二区三区| 婷婷久久综合九色综合绿巨人| 日韩亚洲欧美综合| 成人性生交大合| 美腿丝袜亚洲色图| 亚洲色图在线看| 欧美r级电影在线观看| 欧美亚洲综合一区| 99在线精品免费| 狠狠色狠狠色综合日日91app| 亚洲一区二区不卡免费| 日本一区二区免费在线观看视频| 欧美一区二区三区喷汁尤物| 精品视频一区三区九区| 欧美视频一区在线| 91美女在线观看| 一本色道久久综合亚洲精品按摩| 国产91色综合久久免费分享| 极品少妇一区二区三区精品视频| 亚洲午夜羞羞片| 午夜视频在线观看一区二区三区| 亚洲免费色视频| 亚洲在线视频一区| 香蕉乱码成人久久天堂爱免费| 一区精品在线播放| 亚洲欧美在线观看| 日韩久久一区二区| 一区二区三区四区亚洲| 亚洲成人黄色小说| 奇米影视7777精品一区二区| 激情六月婷婷久久| www.成人在线| 在线不卡中文字幕| 久久综合九色综合久久久精品综合| 26uuu国产日韩综合| 亚洲综合男人的天堂| 麻豆久久久久久久| 91网站视频在线观看| 欧美大片顶级少妇| 亚洲免费观看高清完整版在线观看 | 6080亚洲精品一区二区| 国产精品每日更新在线播放网址| 首页亚洲欧美制服丝腿| 色呦呦国产精品| 欧美精品一区二| 午夜精品福利久久久| 99精品视频在线观看| 欧美v亚洲v综合ⅴ国产v| 亚洲成人av资源| 色呦呦国产精品| 中文成人综合网| 国产精品99久久久| 欧美日韩一区小说| 亚洲国产精品久久人人爱蜜臀 | 欧美日韩中文国产| 亚洲成a人在线观看| 欧美午夜精品理论片a级按摩| 欧美激情一区二区三区| 国产一区二三区好的| 精品福利一区二区三区| 蜜桃视频在线观看一区二区| 9191久久久久久久久久久| 亚洲午夜久久久| 欧美色欧美亚洲另类二区| 亚洲图片自拍偷拍| 欧美久久高跟鞋激| 日韩精品一二三| 欧美精品第1页| 精品一区在线看| 亚洲国产精品传媒在线观看| 国产a精品视频| 亚洲欧洲精品天堂一级| 欧美亚洲禁片免费| 狠狠色狠狠色综合日日91app| 久久综合久久综合九色| 99久久精品国产麻豆演员表| 亚洲中国最大av网站| 日韩免费看的电影| 成人免费三级在线| 亚洲高清免费观看高清完整版在线观看| 欧美日韩一级大片网址| 精品综合久久久久久8888| 国产日韩欧美不卡在线| 欧美性xxxxx极品少妇| 激情欧美日韩一区二区| 一区二区三区 在线观看视频| 国产精品丝袜91| 欧美一区二区三区性视频| 99久久久无码国产精品| 男人的j进女人的j一区| 国产精品毛片大码女人| 日韩美女视频一区二区在线观看| 99麻豆久久久国产精品免费优播| 麻豆精品国产传媒mv男同| 亚洲欧美二区三区| 2021久久国产精品不只是精品| 色系网站成人免费| 国产成人午夜99999| 日本sm残虐另类| 一区二区高清免费观看影视大全| 久久精品视频一区| 久久精品亚洲乱码伦伦中文| 91精品欧美综合在线观看最新| 91在线丨porny丨国产| 国内不卡的二区三区中文字幕| 亚洲午夜视频在线观看| 一区二区三区91| 亚洲网友自拍偷拍| 亚洲自拍另类综合| 亚洲曰韩产成在线| 一区二区三区中文字幕在线观看| 欧美高清在线精品一区| 国产亚洲精品资源在线26u| 日韩小视频在线观看专区| 欧美三级电影网| 这里只有精品99re| 欧美一区二区三区在| 久久久久久久久久久久久女国产乱 | 国产综合久久久久久鬼色| 激情久久久久久久久久久久久久久久| 亚洲电影一区二区| 天堂久久一区二区三区| 日本少妇一区二区| 国产综合一区二区| 高清不卡在线观看| 91在线视频18| 56国语精品自产拍在线观看| 亚洲综合色网站| 日本不卡在线视频| 国产91精品精华液一区二区三区| 波多野结衣的一区二区三区| eeuss鲁片一区二区三区在线观看| 99精品视频在线免费观看| 欧美日韩不卡一区二区| 日韩一区二区免费电影| 亚洲精品在线观| 亚洲精品乱码久久久久久| 日韩影院免费视频| 东方aⅴ免费观看久久av| 欧美色中文字幕| 欧美国产成人在线| 免费成人小视频| 99久久久免费精品国产一区二区| 欧美三级电影精品| 中文字幕一区在线观看视频| 免费的成人av| 在线观看视频欧美| 国产日产欧美精品一区二区三区| 午夜精品久久一牛影视| 成人aa视频在线观看| 久久一区二区三区四区| 亚洲五码中文字幕| 成人丝袜高跟foot| 日韩欧美在线一区二区三区| 一区二区三区精品在线观看| 成人av免费网站| 久久久久久久久99精品| 久久精品国产99国产精品| 欧美日韩不卡视频| 亚洲一二三区在线观看| 色八戒一区二区三区| 国产精品久久久久久久浪潮网站| 久久成人麻豆午夜电影| 日韩三级电影网址| 麻豆极品一区二区三区| 日韩欧美国产小视频| 日本欧美一区二区在线观看| 欧美电影一区二区| 欧美96一区二区免费视频| 欧美一区二区高清| 久久精品国产亚洲5555| 91精品国产综合久久精品性色| 日韩在线a电影| 欧美成人一区二区三区片免费| 蜜臀久久久99精品久久久久久| 欧美一区二区三区不卡| 秋霞午夜鲁丝一区二区老狼| 日韩欧美在线1卡| 国产精品一二三区在线| 国产精品久久久久久久久快鸭| av在线这里只有精品| 一区二区在线看| 日韩亚洲欧美高清| 国产成a人亚洲精| 亚洲日本电影在线| 6080yy午夜一二三区久久| 国产精品乡下勾搭老头1| 成人欧美一区二区三区视频网页| 欧美性猛片aaaaaaa做受| 男女男精品网站| 国产精品夫妻自拍| 欧美一区二区三区爱爱| 成人av小说网| 久久机这里只有精品| 亚洲人吸女人奶水| 欧美精品一区二区三区四区| 欧美影院一区二区三区| 国产高清视频一区| 偷拍一区二区三区|