- PR -

VC++2005:char配列文字列をエディットコントロールへ表示する方法

1
投稿者投稿内容
ひろ@質問です。
会議室デビュー日: 2006/12/04
投稿数: 7
投稿日時: 2006-12-04 15:20
初めまして。VC++2005初心者です。
早速質問させて頂きます。

VC++2005のエディットコントロールにchar型配列の文字列を表示させたいのですが、
コンパイル時に「String^への型変換・・・(新機能)」というエラーメッセージが表示されてしまいます。
やりたい事は、10進数から16進数へ変換した文字列(char配列)をエディット
コントロールのtxtFoo->Textプロパティで表示させたいのですが出来ません。
以下は悩んでいるコードです。

//-----------------------------------------
int nFoo10 = 10;
char szFoo16[256];

memset(szFoo16, 0x00, sizeof(szFoo16));

// 10進数から16進数への変換
sprintf_s(szFoo16, 256, "%04X", nFoo10);

// エディットコントロールへの表示
txtFoo->Text = szFoo16; // コンパイルエラー発生!!!

//-----------------------------------------

以上、ご教授お願い致します。
Blue
大ベテラン
会議室デビュー日: 2005/09/12
投稿数: 230
お住まい・勤務地: 知っている人は知っている
投稿日時: 2006-12-04 15:26
char→String^型の変換は簡単です。
コンストラクタを呼んでください。

>txtFoo->Text = szFoo16;

txtFoo->Text = String(szFoo16);
でも
txtFoo->Text = %String(szFoo16);
でも
txtFoo->Text = gcnew String(szFoo16);
でも出来るはず。

[ メッセージ編集済み 編集者: Blue 編集日時 2006-12-04 15:32 ]
ひろ@質問です。
会議室デビュー日: 2006/12/04
投稿数: 7
投稿日時: 2006-12-04 16:13
ご回答ありがとうございます。

//----- 以下引用 -------------------------
>txtFoo->Text = String(szFoo16);
>でも
>txtFoo->Text = %String(szFoo16);
>でも
>txtFoo->Text = gcnew String(szFoo16);
>でも出来るはず。

//----------------------------------------

txtFoo->Text = String(szFoo16);
ではコンパイルエラーとなってしまいましたが、
以下2通りのコードで解決しました。

ありがとうございました。
ひろ@質問です。
会議室デビュー日: 2006/12/04
投稿数: 7
投稿日時: 2006-12-04 16:13
ご回答ありがとうございます。

//----- 以下引用 -------------------------
>txtFoo->Text = String(szFoo16);
>でも
>txtFoo->Text = %String(szFoo16);
>でも
>txtFoo->Text = gcnew String(szFoo16);
>でも出来るはず。

//----------------------------------------

txtFoo->Text = String(szFoo16);
ではコンパイルエラーとなってしまいましたが、
以下2通りのコードで解決しました。

ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)