この記事は2019年08月25日に投稿しました。
目次
1. はじめに
こんにちは、iOSのエディタアプリPWEditorの開発者の二俣です。
今回は業務で使用しているMFCのコンボボックスで項目をすべて削除する方法についてです。
2. MFCのコンボボックスで項目をすべて削除する
MFCのコンボボックスで項目を削除するには、前回紹介した
のCComboBoxクラスのDeleteString関数を使用します。
この関数でコンボボックスの途中の項目を削除すると、削除された項目以降の項目の位置を削除した方向に移動します。
そのためコンボボックスの項目をすべて削除するには、コンボボックスに設定されている項目の最後の項目から削除する必要があります。
実装例
ヘッダファイル
... CComboBox m_comboBox; ...
実装ファイル
// コンボボックスの項目数を取得します。 int count = m_comboBox.GetCount(); // コンボボックスの項目の後尾から項目を削除します。 for (int i = count - 1; i >= 0; --i) { m_comboBox.DeleteString(i); }
API Reference
CComboBoxクラス
3. おわりに
コンボボックスの項目をすべて削除しようとして、最初は項目を先頭から削除したところ削除されない項目がありました。
調べてみると、項目を削除すると残った項目は削除された方向に移動することがわかりました。
考えてみたら当たり前のことですが、やってみないと気づかないこともよくあります。
紹介している一部の記事のコードはGitlabで公開しています。
興味のある方は覗いてみてください。
私が勤務しているニューラルでは、主に組み込み系ソフトの開発を行っております。
弊社製品のハイブリッドOS Bi-OSは高い技術力を評価されており、特に制御系や通信系を得意としています。
私自身はiOSモバイルアプリやウィンドウズアプリを得意としております。
ソフトウェア開発に関して相談などございましたら、お気軽にご連絡ください。
また一緒に働きたい技術者の方も随時募集中です。
興味がありましたらご連絡ください。
EMAIL : info-nr@newral.co.jp / m-futamata@newral.co.jp
TEL : 042-523-3663
FAX : 042-540-1688