みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VS2017を使った簡単なプログラムについて

現在、VS2017(Visual Studio 2017 Professional)を使って、下のプログラムに示す簡単な計算をするダイアログベースのプログラムを作っています。

プログラムの流れとしては
(1):[ + ]ボタンを押して2つの数値(エディトボックス1と2の値)の和を求めバッファに代入する。
(2):[ = ]ボタンを押してバッファの値をエディトボックス3に表示する。
という流れです。

(1)は動作したのですが、(2)のところでうまく表示されません。どうしたらよいでしょうか。教えてください。

以下に示すプログラムが和を求める部分とエディトボックスに表示させる部分です
変数zは外部で定義してあります。
========▼以下プログラム============
void CMFCApplication2Dlg::OnBnClickedPlus()
{
// TODO: ここにコントロール通知ハンドラー コードを追加します。
double x, y;
//IDC_EDIT1に入力された値を変数m_strXに代入
GetDlgItemText(IDC_EDIT1, m_strX);
//IDC_EDIT2に入力された値を変数m_strYに代入
GetDlgItemText(IDC_EDIT2, m_strY);
//それぞれ文字列をdouble型に変換
x = _ttof(m_strX);
y = _ttof(m_strY);
//和を求めて、変数zに代入
z = x + y;
}


void CMFCApplication2Dlg::OnBnClickedEqual()
{
// TODO: ここにコントロール通知ハンドラー コードを追加します。
WCHAR strAns[256];
//zを文字列に変換
wsprintf(strAns,_T("%4.3f"),z);
//文字列をIDC_EDIT3に代入
SetDlgItemText(IDC_EDIT3,strAns);
}

投稿日時 - 2019-03-29 17:39:44

QNo.9601700

すぐに回答ほしいです

質問者が選んだベストアンサー

CString strAns;
にして
strAns.Format(_T("%.3f"), z);
でいかがでしょう。

投稿日時 - 2019-03-29 20:19:33

お礼

早速の回答ありがとうございます。
教えていただいた通りにして実行したら正常に動作しました。
ありがとうございました。

投稿日時 - 2019-03-30 15:40:39

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問