-1

Visual Studio 2010 で MFC を使用してダイアログ ベースの applciation に取り組んでいます。表示するレポート タイプとしてリスト コントロールを使用しました。その出力ウィンドウにハードコードされたデータを表示することができました。これがコードです。コードの何が問題なのですか

    void CuserspecificationDlg::OnAdd()     // This function add file by clicking on Add button
    {
// TODO: Add your control notification handler code here
CFileDialog ldFile(TRUE);
// Show the File Open dialog and capture the result
if (ldFile.DoModal() == IDOK)
    { 

     CStdioFile fileName;
  //TCHAR buf[100]; // it is declared in h file


       while(  fileName.ReadString(buf,99))
      {}
              fileName.Close();

}

     void CuserspecificationDlg::InsertItems()
    {
    //
list.cx = 100;
list.pszText   = "Project";      // this project is the column heading of the dialog
list.iSubItem = 2;
::SendMessage(hWnd  ,LVM_INSERTCOLUMN, 
    (WPARAM)1,(WPARAM)&list);

SetCell(hWnd,"1",0,0);
SetCell(hWnd,buf,0,1);    // these 1,G,X,X are the hardcoded entries. 
SetCell(hWnd,"G ",0,2);
SetCell(hWnd," X",0,3);

//----- //

}

そのbufを表示する方法は?うまくいきません。buf がファイルのコンテンツを正しく表示していません。一部の文字 1、G、および X は出力ウィンドウに表示されますが、buf ステートメントでは文字が正しく表示されません。.. コードの何が問題なのですか。

4

1 に答える 1

0

リストコントロールに項目を追加するには、最初に列を作成する必要があります。

LVCOLUMN lvCol;
lvCol.mask = LVCF_TEXT | LVCF_WIDTH;
lvCol.pszText = L"Column Header Text";
m_CListCtrl.InsertColumn(0, &lvCol);

// ...

次に、構造体タイプのリストコントロールにアイテムを挿入しますLVITEM

LVITEM item;
item.mask = LVIF_TEXT;
item.pszText = "Column Text";
item.iItem = numItem;      // Item number
item.iSubItem = 0;         // Sub item number (column number)
m_CListCtrl.InsertItem(&item);
于 2012-07-17T14:35:15.280 に答える