ABeginner schrieb:
enum HardwareType
{
ISA_1CH = 0, // ISA 1 Channel
ISA_2CH = 1, // ISA 2 Channels
PCI_1CH = 2, // PCI 1 Channel
PCI_2CH = 3, // PCI 2 Channels
PCC_1CH = 4, // PCC 1 Channel
PCC_2CH = 5, // PCC 2 Channels
USB = 6, // USB
DNP = 7, // DONGLE PRO
DNG = 8, // DONGLE
};
ich würde nun gerne mit diesen Daten eine Combobox füllen. Ich möchte aber nicht jede einzelenen eintrag einzeln in die Comboboxen mit AddString("ISA"); usw. eintragen.
Du hast hier das grundsätzliches Problem angesprochen, wie interne Einstellungsdaten einem Anwender dargeboten werden. Dazumusst Du nun eben auch "human readable" strings verwenden, außer der Anwender weiß immer das 7=DNP ist.
Aso baust Du Dir am besten eine struct Array auf, die den Klartext und diese ID als Inhalt hat, oder noch besser eine Ressource ID von der der Text dann geladen werden kann.
struct {
UINT m_uiText;
HardwareType m_eType;
} asDefs[] =
{
...
};
Nun lässt Du eine Schleife über diesen Array laufen und lädst den Text in die Combo. Gleichzeitig verwendest Du SetItemData um den enum Wert dort einzutragen. Dnan kanst Du driekt aus der Benutzerauswahl den entsprechende enum-Wert aus der Combobox auslesen.