1 #pragma once 2 #include "ListCtrlEx.h" 3 #include "BaseDialog.h" 4 5 6 // CLyricRelateDlg 对话框 7 8 class CLyricRelateDlg : public CBaseDialog 9 { 10 DECLARE_DYNAMIC(CLyricRelateDlg) 11 12 public: 13 CLyricRelateDlg(CWnd* pParent = nullptr); // 标准构造函数 14 virtual ~CLyricRelateDlg(); 15 16 //wstring GetRelatedLyricFile() const { return m_related_lyric; } 17 18 // 对话框数据 19 #ifdef AFX_DESIGN_TIME 20 enum { IDD = IDD_LYRIC_RELATE_DIALOG }; 21 #endif 22 23 private: 24 CButton m_fuzzy_match_chk; 25 CListCtrlEx m_result_list; 26 27 vector<wstring> m_search_result; 28 //wstring m_related_lyric; 29 30 private: 31 void ShowSearchResult(); //刷新列表 32 void AddListRow(const wstring& lyric_path); //向列表添加一行 33 wstring GetListRow(int index); //获取列表中一行的歌词路径 34 void SearchLyrics(); 35 void EnableControls(bool enable); 36 37 protected: 38 virtual CString GetDialogName() const override; 39 virtual bool InitializeControls() override; 40 virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持 41 42 DECLARE_MESSAGE_MAP() 43 public: 44 virtual BOOL OnInitDialog(); 45 afx_msg void OnBnClickedLocalSearchButton(); 46 afx_msg void OnBnClickedBrowseButton1(); 47 afx_msg void OnBnClickedDeleteFileButton(); 48 afx_msg void OnBnClickedDonotRelateButton(); 49 virtual void OnOK(); 50 afx_msg void OnLvnItemchangedSearchResultList(NMHDR *pNMHDR, LRESULT *pResult); 51 }; 52