Hallo Community.
Ich habe letztens mit c++ begonnen und ein Programm fertiggestellt. Es führt einfache Rechnungen an Zufallsnummern durch. Bisher läuft alles in der Konsole und für ein anwenderfreundlicheres Aussehen möchte ich jetzt eine GUI schreiben.
Soweit so gut.
Problem:
Ich muss 1369 verschiedene Zahlen anzeigen.
Die Textfelder kreiere ich mit 2 for loops.
Damit ich den Wert der einzelnen Felder ändernkann, muss jedes Feld eine einzigartige ID besitzen. 9ter Parameter der CreateWindow Funktion.
Frage1: Wie gebe ich jeder Textbox eine individuelle ID?
Frage2: Muss ich jeden Id am Anfang des Documents definieren?
(1369 Zeilen "define code" ist meiner Meinung nach nicht das Wahre. Ist es valide mehrere IDs in einer Zeile zu definieren?
Frage3: Gibt es nicht eien viel bessere und elegantere Lösung für das Problem?
Danke
Ich habe letztens mit c++ begonnen und ein Programm fertiggestellt. Es führt einfache Rechnungen an Zufallsnummern durch. Bisher läuft alles in der Konsole und für ein anwenderfreundlicheres Aussehen möchte ich jetzt eine GUI schreiben.
Soweit so gut.
Problem:
Ich muss 1369 verschiedene Zahlen anzeigen.

Die Textfelder kreiere ich mit 2 for loops.
Code:
case WM_CREATE: {
for(int i=1; i<=37; i++)
{
switch(i){
case 1: Buf="A"; break; case 13: Buf="M"; break;case 25: Buf="X"; break;
case 2: Buf="B"; break; case 14: Buf="N"; break;case 26: Buf="Z"; break;
case 3: Buf="C"; break; case 15: Buf="O"; break;case 27: Buf="AA"; break;
case 4: Buf="D"; break; case 16: Buf="P"; break;case 28: Buf="AB"; break;
case 5: Buf="E"; break; case 17: Buf="Q"; break;case 29: Buf="AC"; break;
case 6: Buf="F"; break; case 18: Buf="R"; break;case 30: Buf="AD"; break;
case 7: Buf="G"; break; case 19: Buf="S"; break;case 31: Buf="AE"; break;
case 8: Buf="H"; break; case 20: Buf="T"; break;case 32: Buf="AF"; break;
case 9: Buf="I"; break; case 21: Buf="U"; break;case 33: Buf="AG"; break;
case 10:Buf="J"; break; case 22: Buf="V"; break;case 34: Buf="AH"; break;
case 11:Buf="K"; break; case 23: Buf="W"; break;case 35: Buf="AI"; break;
case 12:Buf="L"; break; case 24: Buf="X"; break;case 36: Buf="AJ"; break;
case 37:Buf="AK";
}
//Create Label
//X
CreateWindow(TEXT("STATIC"), TEXT(InttoconstChar(i)),
WS_VISIBLE | WS_CHILD,
(i*28)+3+x_Offset,y_Offset,20,13,
hwnd, (HMENU) NULL, NULL, NULL);
// Y
CreateWindow(TEXT("STATIC"), TEXT(InttoconstChar(i)),
WS_VISIBLE | WS_CHILD,
x_Offset,(i*13)+7+y_Offset,20,13,
hwnd, (HMENU) NULL, NULL, NULL);
for(int ii=1; ii<=37; ii++){
CreateWindow(TEXT("EDIT"),TEXT(InttoconstChar(i)),
WS_VISIBLE | WS_CHILD | WS_BORDER,
(i*28)+1+x_Offset,(ii*13)+8+y_Offset,20,13,
hwnd, (HMENU) NULL, NULL, NULL);
}
}
break;
}
Damit ich den Wert der einzelnen Felder ändernkann, muss jedes Feld eine einzigartige ID besitzen. 9ter Parameter der CreateWindow Funktion.
Frage1: Wie gebe ich jeder Textbox eine individuelle ID?
Frage2: Muss ich jeden Id am Anfang des Documents definieren?
Code:
#define IDA1
#define IDA2
#define IDA3
#define IDA4
#define IDA5
#define IDA6
#define IDA7
#define IDA8
#define IDA9
#define IDA10
.
.
.
#define IDAK37
(1369 Zeilen "define code" ist meiner Meinung nach nicht das Wahre. Ist es valide mehrere IDs in einer Zeile zu definieren?
Code:
#define IDA1,IDA2,IDA3,...,IDAn
Frage3: Gibt es nicht eien viel bessere und elegantere Lösung für das Problem?
Danke
