📄 showsongdlg.cpp
字号:
// ShowSongDlg.cpp : 实现文件
//
#include "stdafx.h"
#include "Song.h"
#include "ShowSongDlg.h"
#include ".\showsongdlg.h"
// CShowSongDlg 对话框
IMPLEMENT_DYNAMIC(CShowSongDlg, CDialog)
CShowSongDlg::CShowSongDlg(CView * pView /*=NULL*/)
: m_Singer(_T(""))
, m_Time(_T(""))
, m_Other(_T(""))
{
m_pView = pView;
}
CShowSongDlg::~CShowSongDlg()
{
if( m_Set.IsOpen() )
m_Set.Close();
}
void CShowSongDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDIT_SINGER, m_Singer);
DDX_Text(pDX, IDC_EDIT_TIMER, m_Time);
DDX_Text(pDX, IDC_EDIT_OTHER, m_Other);
DDX_Control(pDX, IDC_LIST1, m_NameList);
}
BEGIN_MESSAGE_MAP(CShowSongDlg, CDialog)
ON_BN_CLICKED(IDCANCEL, OnBnClickedCancel)
ON_BN_CLICKED(IDC_BTUPDATE, OnBnClickedBtupdate)
ON_LBN_SELCHANGE(IDC_LIST1, OnLbnSelchangeList1)
END_MESSAGE_MAP()
// CShowSongDlg 消息处理程序
BOOL CShowSongDlg::Create()
{
return CDialog::Create(CShowSongDlg::IDD);
}
void CShowSongDlg::OnBnClickedCancel()
{
if( m_pView != NULL )
m_pView->PostMessage(WM_MYUSER_DLGEXIT);
else
OnCancel();
}
BOOL CShowSongDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: 在此添加额外的初始化
try
{
m_Set.Open();
}
catch(...)
{
MessageBox("数据库打开异常");
return FALSE;
}
LoadSongName();
if( m_NameList.GetCount() > 0 )
m_NameList.SetCurSel(0);
ShowCurData();
return TRUE; // return TRUE unless you set the focus to a control
}
// 读入歌名列表
void CShowSongDlg::LoadSongName()
{
// 删除原有项
while( m_NameList.GetCount() )
m_NameList.DeleteString(0);
if( m_Set.IsBOF() == false )
m_Set.MoveFirst();
// 读入所有数据
while( !m_Set.IsEOF() )
{
// 为List 控件添加值
m_NameList.AddString( m_Set.m_Name );
m_Set.MoveNext();
}
}
void CShowSongDlg::OnBnClickedBtupdate()
{
try
{
if( m_Set.IsOpen() )
m_Set.Close();
m_Set.Open();
}
catch(...)
{
MessageBox("数据库打开异常");
return ;
}
LoadSongName();
if( m_NameList.GetCount() > 0 )
m_NameList.SetCurSel(0);
ShowCurData();
}
// 显示当前选择的记录
void CShowSongDlg::ShowCurData()
{
// 得到当前选择的是第几项
int k = m_NameList.GetCurSel();
if( k == -1 )
return;
// 将指针移动到当前记录除
if( m_Set.IsBOF() == false )
m_Set.MoveFirst();
m_Set.Move(k);
// 附值
m_Singer = m_Set.m_Singer;
m_Time = m_Set.m_Time;
m_Other = m_Set.m_Other;
// 更新显示
UpdateData(false);
}
void CShowSongDlg::OnLbnSelchangeList1()
{
ShowCurData();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -