Neuling
-
hallo,
ich bin Student und soll jetzt während meines Praktikumssemesters ein Programm anpassen. Leider hatte ich nur ein wenig C++ im Studium (Klasse definieren, Funktionen). Das Programm besitzt eine grafische Oberfläche (im Windows Style) mit verschiedenen Radio Buttons, Häckchens, etc.
Nun würde ich gern wissen wie ich von der Oberfläche aus einen Wert bis hin zu dem Quellcode verfolgen kann. Also es gibt zb. 3 Radio buttons wenn der 1. angewählt ist, wird letztendlich an eine variable eine 1 übergeben, wenn der 2. angewählt ist wird eine 2 übergeben usw.
Leider seh ich absolut nicht durch wo das geschieht.
Meine Aufgabe ist es letztendlich mehr Radiobuttons hinzuzufügen und dementsprechend auch andere Werte zu übergeben.
Ich hoffe ihr könnt mir helfen.
Vielen Dank im vorraus,mfg, TFTS
-
Hallo,
zum schrittweisen Abarbeiten der Anweisungen, gibt es Debugger, welche meist in
deiner IDE integriert sind.Welche Library nutzt du? VCL? MFC?
Wenn es die VCL ist, dann solltest du dir mal die OnClick-Ereignisse der einzelnen
Controls anschauen. Bei der MFC kann ich dir leider nicht weiterhelfen, aber auch
hier wird es wohl kaum anders sein.mfg
v R
-
wie kann ich rausfinden welche libary benutzt wird. ich wurde wie gesagt etwas ins kalte wasser geschmissen und habe von diesen dingen noch keine ahnung
mfg, TFTS
-
Mit was arbeitest du? Visual Studio oder Borland C++ Builder? Wie heissen die
Klassen, welche die Fenster darstellen? (z. B. TForm oder sowas)mfg
v R
-
arbeite mit microsoft visual c++ 6.0. ich denke mal die klassen wurden von hand umbenannt. sie haben alle ein C am anfang > zb. CMainFrame
Das Fenster selbst kann ich unter Resourcen finden. es heisst dort IDD_[programmname]_FORM
kannst du mir schritt für schritt erklären wo ich den gang der variablen nachvollziehen kann?
EDIT: die variable die ich verfolgen will wird in eine Funktion namens setvalue hereingegeben ... also irgendwo muss der wert ja übergeben werden ... nur wo ist die frage
vielen dank
mfg, TFTS
-
hab jetzt in einer quelltext datei folgende ausdrücke gefunden
ON_BN_CLICKED(IDC_RADIO1, OnRadio1)
DDX_Radio(pDX,IDC_RADIO1, m_layer)IDC_Radio ist einer der Radio Buttons bei den ich noch 2 hinzufügen soll, könnt ihr mir sagen was diese beiden ausdrücke bedeuten?
danke schon mal
mfg, TFTS
-
Hi,
fang mal an mit einem neuen dialogbasierendem Projekt.
Füge 2 Radiobuttons ein. Ein Radiobutton musst du in den Eigenschaften das Group-Häkchen setzten.
Über den Class-Wizard kannst du nun dem Radiobutton dessen Group-Häkchen gesetzt ist eine Memebervariable zufügen.
Für alle Radiobuttons kannst du nun eine OnClick Benachrichtigungsfunktion einfügen (auch mit dem Class-Wizard)
Der grundsätzlich Mechanismus ist jetzt bereits fertig. Um die Member auszulesen schreibst du folgenden Code in alle OnClick funktionen:UpdateData(true); //gibt die Daten vom Control zur Member int i = m_Radio1; m_Radio = 1; UpdateData(false); // gibt die Daten von der Memeber zum Control
Brechpunkt setzten und kucken, was in m_Radio1 drinsteht.
-
danke für deine antwort. ich versteh nur leider nicht den sinn des ganzen. wie gesagt ich habe ein programm das angepasst werden muss. In dem quellcode wo die berechnungen zu finden sind gibts eine Variable N. Diese Variable wird irgendwie von den Radio buttons beeinflusst wenn man den 1. RadioButton anklickt hat N den Wert 1, wenn man den 2. anklickt 3 und wenn man den 3. anklickt 4, usw.
Nun möchte ich erstmal bloß wissen wie der jeweilige wert der RadioButtons an das N kommt, über welche Funktionen das geschieht und wo ich die eventuell finden kann.
Der 2. Schritt istt dann, wenn ich erstmal grob begriffen hab worum es geht, 2 weitere Radio buttons hinzuzufügen die die werte 6 und 7 an das N übergeben sollen
also bitte idiotensicher erklären
danke schonmal
mfg, TFTS
-
UpdateData(true); N = m_Radio;
kuck doch mal wie die Member des Radiobuttons heist und such mit Ctrl+f oder besser Find in files wie diese weiterverarbeitet wird.
Gruß
-
ich habe jetzt 2 weitere Radio buttons hinzugefügt, hab denen auch schon ne void funktion geschrieben (sie sollen außer dass sie das N bestimmen auch noch andere felder editierbar machen)
Mein nächstes Problem: wie bekomme ich das hin, dass wenn ich einer der beiden neuen Radio buttons anklicke die anderen "aus gehen". Vermute mal ich muss sie irgendwie in die Gruppe der anderen einfügen aber wie?
wo kann ich nachschauen wie die Member des Radio Buttons heisst?
mfg, TFTS
-
TFTomSun schrieb:
Mein nächstes Problem: wie bekomme ich das hin, dass wenn ich einer der beiden neuen Radio buttons anklicke die anderen "aus gehen". Vermute mal ich muss sie irgendwie in die Gruppe der anderen einfügen aber wie?
Radiobuttons sind meistens innerhalb einer Groupbox plaziert. Diese gehören dann zusammen und die MFC regelt das, das die anderen Radiobuttons dementsprechend umschalten.
TFTomSun schrieb:
wo kann ich nachschauen wie die Member des Radio Buttons heisst?
sihe Beitrag oben: Class Wizard, da wird der Control-ID eine Member zugewiesen.
-
ich bin Student ... Leider hatte ich nur ein wenig C++ im Studium (Klasse definieren, Funktionen).
Keine Selbstinitiative?
microsoft visual c++ 6.0:
http://www.henkessoft.de/mfc_einsteigerbuch_kapitel1.htm (C++ und MFC)
http://www.henkessoft.de/mfc_einsteigerbuch_kapitel2.htm (Elemente im Dialogfeld)