WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Enable edit-textbox bei Auswahl eines Radiobuttons

 

claudiainstyle
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 22.04.08
Wohnort: München
Version: ---
     Beitrag Verfasst am: 22.04.2008, 21:00     Titel: Enable edit-textbox bei Auswahl eines Radiobuttons
  Antworten mit Zitat      
Hallo!

Ich habe folgendes Problem:
Der User hat in meinem GUI die Möglichkeit zwischen zwei Optionen, dargestellt durch 2 Radiobuttons, zu wählen.
Bei Aktivierung von Radiobutton1 soll in die Edit-Text-Box (schub) "0" geschrieben werden. Gleichzeitig soll sie disabled, also Enable 'off', geschaltet werden. Bei Auswahl des Radiobutton2 soll die textbox schub Enable 'on' sein.

Mein Programmcode dazu sieht fwie folgt aus:

function radiobutton1_Callback(hObject, eventdata, handles)

function radiobutton2_Callback(hObject, eventdata, handles)

function uipanel5_SelectionChangeFcn(hObject,eventdata,handles)
selection = get(hObject,'SelectedObject');
switch get(selection,'Tag')
case 'radiobutton1'
set(handles.schub, 'String', 0);
set(handles.schub, 'Enable', 'off');

case 'radiobutton2'
set(handles.schub, 'Enable', 'on');


Leider funktioniert es nicht. Ich bin nicht vom Fach, also kann ich mir auch nicht erklären warum. Ich hab mich auch hier schon durchs Forum gearbeitet und in der Matlab-Hilfe gelesen.
Leider brachte mich nichts davon weiter.
Ich habe das GUI mit dem Assistenten erstellt. Im Property Inspector der edit-textbox schub ist die Option Enable auf 'on' gestellt. Hat es etwas damit zu tun?

Ich wäre euch sehr dankbar für jede Hilfe!!!!

Claudia
Private Nachricht senden Benutzer-Profile anzeigen


Martin
Admin

Admin



Beiträge: 651
Anmeldedatum: 16.06.07
Wohnort: Bietigheim-Bissingen
Version: ---
     Beitrag Verfasst am: 22.04.2008, 21:30     Titel:
  Antworten mit Zitat      
Hallo Claudia,

anbei ein kleines Beispiel was funktioniert. (Speichere sie als untitled.m und untitled.fig)

Noch kurz die Erklärung.

Code:
function radiobutton1_Callback(hObject, eventdata, handles)

set(handles.edit1, 'String', 0);
set(handles.edit1, 'Enable', 'off');


function radiobutton2_Callback(hObject, eventdata, handles)

set(handles.edit1, 'Enable', 'on');


Die zwei Radio Buttons dann noch in ne Button Group reinmachen (das kannst du mit dem Tool) und schon wars das. Die Button Group verknüpft die zwei Radiobuttons damit nicht beide "An" sein können!

Ist dir das Beispiel klar geworden?

Gruß Martin

untitled.fig
 Beschreibung:
die Figure der GUI

Download
 Dateiname:  untitled.fig
 Dateigröße:  1.9 KB
 Heruntergeladen:  828 mal
untitled.m
 Beschreibung:
das M-File der GUI

Download
 Dateiname:  untitled.m
 Dateigröße:  4.56 KB
 Heruntergeladen:  930 mal

_________________

Der kleine goMatlab.de-Knigge - Eine kleine Liste von wichtigen Regeln, die jeder beachten sollte
Private Nachricht senden Benutzer-Profile anzeigen
 
claudiainstyle
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 22.04.08
Wohnort: München
Version: ---
     Beitrag Verfasst am: 22.04.2008, 23:15     Titel:
  Antworten mit Zitat      
Hallo Martin!

Vielen Dank erst einmal für die rasche Hilfe!
Ich habe meine Button-Group inkl. Buttons gelöscht, die zwei Buttons neu erstellt und mit deinen Befehlen ausgestattet. Dann habe ich noch eine Button-Group wie empfohlen drum herum gezogen.
Das mit der "0" und dem Enable 'off' funktioniert jetzt.
Allerdings lassen sich jetzt beide Buttons gleichzeitig anklicken. Das sollte nicht sein. Wie behebe ich den Fehler?

Liebe Grüße,
Claudia
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.022
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2023b
     Beitrag Verfasst am: 23.04.2008, 07:51     Titel:
  Antworten mit Zitat      
Hi Claudia,

ohne es probiert zu haben:
Versuche doch mal erst die Buttongroup zu erstellen und danach die Radiobuttons hinzu zufügen.

Sonst ist es glaub ich so, wie wenn du Fenster einsetzen willst, aber die Wand erst danach hochziehst (so stell ich mir das zumindest bildlich vor)Wink

Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Martin
Admin

Admin



Beiträge: 651
Anmeldedatum: 16.06.07
Wohnort: Bietigheim-Bissingen
Version: ---
     Beitrag Verfasst am: 23.04.2008, 09:27     Titel:
  Antworten mit Zitat      
steve hat Folgendes geschrieben:
Versuche doch mal erst die Buttongroup zu erstellen und danach die Radiobuttons hinzu zufügen.

Seh ich genau so! Schließlich werden die RadioButtons an die Group gebunden und nicht andersrum Smile

Versuch es mal.

Viele Grüße Martin
_________________

Der kleine goMatlab.de-Knigge - Eine kleine Liste von wichtigen Regeln, die jeder beachten sollte
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.