⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dlgbookmarkmanage.cpp

📁 使用vc开发的个人信息管理系统
💻 CPP
字号:
// DlgBookMarkManage.cpp : 实现文件
//

#include "stdafx.h"
#include "dotNET界面.h"
#include "dotNET界面Doc.h"
#include "dotNET界面View.h"
#include "MainFrm.h"
#include "InPlaceEdit.h"
#include "DlgBookMarkManage.h"
#include ".\dlgbookmarkmanage.h"


// CDlgBookMarkManage 对话框

IMPLEMENT_DYNAMIC(CDlgBookMarkManage, CDialog)
CDlgBookMarkManage::CDlgBookMarkManage(CWnd* pParent /*=NULL*/)
	: CDialog(CDlgBookMarkManage::IDD, pParent)
	, strID(_T(""))
{
	iItem=-1;
}

CDlgBookMarkManage::~CDlgBookMarkManage()
{
}

void CDlgBookMarkManage::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_LIST_SHOWBOOKMARK, m_ListBookMark);
}


BEGIN_MESSAGE_MAP(CDlgBookMarkManage, CDialog)
	ON_BN_CLICKED(IDC_BUTTON_UPDATENAME, OnBnClickedButtonUpdatename)
	ON_BN_CLICKED(IDC_BUTTON_DEL, OnBnClickedButtonDel)
	ON_BN_CLICKED(IDC_BUTTON_SHOW, OnBnClickedButtonShow)
	ON_NOTIFY(NM_CLICK, IDC_LIST_SHOWBOOKMARK, OnNMClickListShowbookmark)
	ON_MESSAGE(WM_VALIDATE, OnEndLabelEditVariableCriteria)
END_MESSAGE_MAP()


// CDlgBookMarkManage 消息处理程序

void CDlgBookMarkManage::OnBnClickedButtonUpdatename()
{
	// TODO: 在此添加控件通知处理程序代码
	if(iItem==-1){
		AfxMessageBox("你没有选择要修改的书签");
		return ;
	}
	//CEdit* pEdit =m_ListBookMark.EditLabel(iItem);
	CString strCurSelection = m_ListBookMark.GetItemText(iItem, 1);
	CInPlaceEdit* pInPlaceEdit = m_ListBookMark.ShowInPlaceEdit(iItem, 1, strCurSelection);
}

void CDlgBookMarkManage::OnBnClickedButtonDel()
{
	// TODO: 在此添加控件通知处理程序代码
	if(iItem==-1){
		AfxMessageBox("你没有选择要删除的书签");
		return ;
	}
	_RecordsetPtr DelBookMarkSet;
	DelBookMarkSet.CreateInstance(__uuidof(Recordset));
	_variant_t _strSQLAttachment("DELETE FROM BookMark WHERE NodeId='"+strID+"'");//NodeId
	if(!theApp.ADOExecute(DelBookMarkSet,_strSQLAttachment)) return ;
	m_ListBookMark.DeleteItem(iItem);
	UpdateData(false);
	if(adStateOpen==DelBookMarkSet->State)	DelBookMarkSet->Close();
	DelBookMarkSet.Release();
	CMainFrame * p=(CMainFrame*)AfxGetMainWnd();
	p->ShowBookMark();
}

void CDlgBookMarkManage::OnBnClickedButtonShow()
{
	// TODO: 在此添加控件通知处理程序代码
	CDotNETView* p = (CDotNETView*)(((CMainFrame*)AfxGetMainWnd())->GetActiveView());
	//CDotNETApp * App=(CDotNETApp *)AfxGetApp();
	if(iItem==-1){
		AfxMessageBox("你没有选择要显示内容的书签");
		return ;
	}
	p->m_Title=strID;
	p->CreateMyEdit();
	theApp.pDlg->BookMarkShow(strID);
}

BOOL CDlgBookMarkManage::OnInitDialog()
{
	CDialog::OnInitDialog();

	// TODO:  在此添加额外的初始化
	UpdateData(true);
	m_ListBookMark.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_HEADERDRAGDROP|LVS_EDITLABELS);
	m_ListBookMark.InsertColumn(0, "书签编号", LVCFMT_LEFT, 70);
	m_ListBookMark.InsertColumn(1, "书签名称", LVCFMT_LEFT, 155);
	CString strFileName,strTAttachmentID;
	int i=0;
	_RecordsetPtr MySet;
	_variant_t Holder;
	MySet.CreateInstance(__uuidof(Recordset));
	_variant_t _strSQL("SELECT * FROM BookMark");
	theApp.ADOExecute(MySet,_strSQL);
	while(!MySet->adoEOF){
		Holder=MySet->GetCollect("NodeId");
		strTAttachmentID = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
		Holder=MySet->GetCollect("BookMark");
		strFileName = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
		m_ListBookMark.InsertItem(i,strTAttachmentID);//NodeName
		m_ListBookMark.SetItemText(i,1,strFileName);
		i++;
		MySet->MoveNext();
	}
	if(adStateOpen==MySet->State)	MySet->Close();
	MySet.Release();
	return TRUE;  // return TRUE unless you set the focus to a control
	// 异常: OCX 属性页应返回 FALSE
}

void CDlgBookMarkManage::OnNMClickListShowbookmark(NMHDR *pNMHDR, LRESULT *pResult)
{
	// TODO: 在此添加控件通知处理程序代码
	POSITION pos =m_ListBookMark.GetFirstSelectedItemPosition();
	iItem =m_ListBookMark.GetNextSelectedItem(pos);
	strID=m_ListBookMark.GetItemText(iItem, 0);
	//strFileName=m_ListBookMark.GetItemText(iItem, 2);
	*pResult = 0;
}

LRESULT CDlgBookMarkManage::OnEndLabelEditVariableCriteria(WPARAM wParam, LPARAM lParam) 
{
	LV_DISPINFO* pDispInfo = (LV_DISPINFO*)lParam;

	// Update the item text with the new text
	m_ListBookMark.SetItemText(pDispInfo->item.iItem, pDispInfo->item.iSubItem, pDispInfo->item.pszText);
	m_ListBookMark.AddBookMark(pDispInfo,strID);
	// TODO: Add your control notification handler code here
	return 1;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -