1 #pragma once 2 3 // CTagEditDlg 对话框 4 5 class CTagEditDlg : public CDialog 6 { 7 DECLARE_DYNAMIC(CTagEditDlg) 8 9 public: 10 struct ItemInfo 11 { 12 wstring file_path; 13 SongInfo song_info; 14 bool operator==(const ItemInfo& a) const 15 { 16 return file_path == a.file_path; 17 } 18 }; 19 20 21 CTagEditDlg(vector<ItemInfo>& file_list, int index, CWnd* pParent = nullptr); // 标准构造函数 22 virtual ~CTagEditDlg(); 23 24 // 对话框数据 25 #ifdef AFX_DESIGN_TIME 26 enum { IDD = IDD_TAG_EDIT_DIALOG }; 27 #endif 28 29 protected: 30 vector<ItemInfo>& m_file_list; 31 int m_index; 32 33 CComboBox m_genre_combo; 34 35 virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持 36 37 void ShowInfo(); 38 39 DECLARE_MESSAGE_MAP() 40 public: 41 virtual BOOL OnInitDialog(); 42 afx_msg void OnBnClickedPreviousButton(); 43 afx_msg void OnBnClickedNextButton(); 44 afx_msg void OnBnClickedSaveButton(); 45 }; 46