iniファイルでページ数を指定し、コンボボックスに「1、2、3・・・、(最大ページ数)」と表示させ、最終的にコンボボックスで選択したページに画面が切り替わるようなツールを作ろうとしています。
以下のようなコードを書き、デバックして確認したところ、
構造体(m_ComboPageNum)にページ数が入っていないようだということが分かりました。
領域の確保の仕方が間違っているのが、データの格納の仕方が間違っているのか分かりません。
どなたか教えてくださると幸いです。よろしくお願いいたします。
ini
1//Setting.ini 2//ページ数を設定する 3 4[PAGE] 5PageNum=7
C++
1//test.h 2 3//コンボボックスに項目名と値を設定する構造体 4typedef struct{ 5 LPCSTR strName//項目名。コンボボックスに表示される 6 int iData//項目名ごとの値 7} COMBO_PAGE 8 9 10//test.cpp 11BOOL CTest::OnInitDialog() 12{ 13 //iniファイルから設定されたページ数を取得する 14 int iPage; 15 iPage = GetPrivateProfileInt(_T("PAGE"), T("PageNum"), 4, _T("Setting.ini")); 16 17 //ページ数+NULL分の領域を確保する 18 COMBO_PAGE *m_ComboPageNum; 19 m_ComboPageNum = new COMBO_PAGE[iPage + 1]; 20 21 int iPageNum = 0; 22 CString strPage; 23 24 for(int iCount = 0; iCount<iPage; iCount++) 25 { 26 iPageNum = iCount + 1; 27 strPage.Format(_T("%d"), iPageNum); 28 29 m_ComboPageNum[iCount] = {(LPCSTR)strPage, iPageNum}; 30 } 31 32・ 33・ 34・ 35
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/15 10:12
2019/06/15 10:17
2019/06/15 10:35
2019/06/15 10:44
2019/06/15 10:52
2019/06/15 10:53
2019/06/15 10:56
2019/06/15 12:00