- ベストアンサー
GetAt・SetAtを用いてエディットボックスに表記するにはどうすれば良いでしょうか?
VC++の初心者です。エディットボックス1で"ON"または"OFF"を入力し、エディットボックス2に"ON"の場合は1を表記し、"OFF"の場合は2をGetAt・SetAtを用いて、表記させたいのですが。初歩的な質問ですみませんが、どうぞよろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
void CMyDialog::OnButton1Click() { UpdateData(TRUE); if( m_strEdit1 == _T("ON") ) { m_strEdit2 = _T("1"); } else if( m_strEdit1 == _T("OFF") ) { m_strEdit2 = _T("2"); } UpdateData(FALSE); } みたいにすれば、平気かな?
その他の回答 (2)
- taka_tetsu
- ベストアンサー率65% (1020/1553)
で、肝心なことを。 CString::GetAt()はともかく、SetAt()を使う意味は? 使うところがわからないのですが。 SetAt()は1文字しか置き換えられませんけど。 http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vclib/html/vclrfCSimpleStringTSetAt.asp
補足
何をやりたいかと言いますと、エディットボックスに固定文字を入力し、その結果をETH経由で別のボードのCPUのアドレス値を変更したいと言う内容です。アドレス値は固定なので、データ値を必要時に変更するという内容です。 よって、現時点では"ON"or"OFF"と言うような表現をさせて頂いてますが、データ変更が一番の目的です。やりたい事は言えるのですが、これをコード化するのが出来なくてすみません。よろしくお願い致します。
- taka_tetsu
- ベストアンサー率65% (1020/1553)
エディットボックス2への変更はリアルタイムですか? それともプッシュボタンを押したとき等ですか? どちらの場合でも、処理を行いたいときのイベントハンドラを作成し、 UpdateData()を使ってエディットボックスの値の取得、反映をしてください。
補足
ご教示ありがとうございます。 イベント発生は"ON”or"OFF"を入力後、プッシュボタンを押下時にそれぞれ"1"or"0"としたいので、リアルタイムではありません。 初心者のため変な質問で申し訳ありません。また、内容を参考に挑戦してみます。
お礼
taka tetsuさん色々とご教示くださいましてありがとうございました。ご教示頂いたソースをヒントに自分なりに動かして見ました。まだ、不完全ですがかなり前向きになりました。本当にありがとうございました。