エディットボックスへ複数行文字列を出力
エディットボックスへ複数行の文字列を出力する方法、テキストファイルの全内容をエディットボックスへ出力方法を示します。
(注意)ここでは、リソースエディタを使って作成されたダイアログ上のCEditを前提としています。
【プロパティの設定】
複数行の表示、改行を可能にするためにプロパティを設定します。
以下のプロパティにチェックが必要です。
・[スタイル]-[複数行]
・[スタイル]-[改行を許可]
【サンプル】
//エディットボックスへ複数行出力
void CVcEdBoxDlg::OnButton1()
{
TCHAR szt[50];
//格納用文字列を生成
CString strBuf1 = "XXXXXX";
CString strBuf2 = "YYYYYY";
//改行コード(CR + LF)を挿入
_stprintf(szt, _T("%s\x0D\x0A%s"), strBuf1, strBuf2);
//エディット・ボックスへ文字列を格納
CEdit* myEdit = (CEdit*)GetDlgItem(IDC_EDIT1);
myEdit->SetWindowText(szt);
}
//テキストファイルの全内容をエディットボックスへ出力
void CVcEdBoxDlg::OnButton2()
{
CString FName;
CFileException e;
CFile fobj;
//ファイルを開く
fobj.Open("テキスト・ファイル名", CFile::modeRead, &e);
//データ格納領域を確保
char *FData = new char [fobj.GetLength()];
//ファイルの読み込み
fobj.Read(FData, fobj.GetLength());
fobj.Close();
//エディットボックスへファイルの内容を格納
CEdit* myEdit = (CEdit*)GetDlgItem(IDC_EDIT1);
myEdit->SetWindowText(FData);
}
【備考】
Version : Visual C++ 6.0
[サンプル・ソース]