|
|
GUI funktioniert nur wenn über den code geöffnet |
|
sir_nemo2008 |
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 30.12.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.01.2011, 18:22
Titel: GUI funktioniert nur wenn über den code geöffnet
|
|
Hallo, ich habe ein Problem mit ein Paar GUI Fenstern die ich erstellt habe und bin schon total am verzweifeln.
Ich habe jeweils zwei Fenster wobei das erste mit einen Pushbutton ausgestattet ist, nun will ich, dass ich wenn ich den Pushbutton betätige, sich das jeweils zweite Fenster öffnet, dies klappt auch, aber nur so lange ich den Pushbutton nicht mir z.B. einem Popupmenü "verbinde". wenn ich das tue (übrigens auch bei einer Gruppe Radiobuttons) funktioniert das öffnen des nächsten Fensters nur dann wenn ich in CodeSkript auf das kleine grüne Dreieck klicke, wenn ich aber einfach nur das .fig fenster öffne bzw. über ein zuvorgeschaltetes Fenster dieses "erreiche" und dann auch den Button klicke wird mir bloß eine Fehlermeldung angegeben und es passiert nichts.
bitte helft mir, ich weiß echt nicht wie das sein kann...
danke schonmal im vorraus
|
|
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 01.01.2011, 21:06
Titel: Re: GUI funktioniert nur wenn über den code geöffnet
|
|
|
|
|
Hallo sir_nemo2008,
Ich werde aus Deiner Frage nicht schlau.
Zitat: |
Ich habe jeweils zwei Fenster wobei das erste mit einen Pushbutton ausgestattet ist, |
Was heißt hier "jeweils"?
Zitat: |
nun will ich, dass ich wenn ich den Pushbutton betätige, sich das jeweils zweite Fenster öffnet, dies klappt auch, aber nur so lange ich den Pushbutton nicht mir z.B. einem Popupmenü "verbinde". |
Was bedeutet "verbinden" hier? Was genau wird dabei verbunden?
Zitat: |
wenn ich das tue (übrigens auch bei einer Gruppe Radiobuttons) funktioniert das öffnen des nächsten Fensters nur dann wenn ich in CodeSkript auf das kleine grüne Dreieck klicke, |
Was ist "CodeSkript" - geht es um Simulink?
Zitat: |
wenn ich aber einfach nur das .fig fenster öffne |
Wie genau öffnest Du das fig-Fenster? Doppelklick im Windows-Explorer? "open FileName.fig"? Oder wie sonst?
Zitat: |
bzw. über ein zuvorgeschaltetes Fenster dieses "erreiche" |
Wie "erreicht" man ein Fenster? Was ist ein "zuvorgeschaltetes" Fenster?
Zitat: |
und dann auch den Button klicke |
Welchen Button?
Zitat: |
wird mir bloß eine Fehlermeldung angegeben und es passiert nichts. |
Schön! Wenn eine Fehlermeldung erscheint, enthält sie im Allgemeinen wertvolle Tips, wo der Fehler liegt. Nun wäre es natürlich hilfreich, wenn Du diese Fehlermeldung auch hier posten würdest.
Für Dich mag die Beschreibung des Problems klar und deutlich sein. Wenn man aber Dein Programm noch nie gesehen hat, klingt die Beschreibung sehr kryptisch.
Gruß, Jan
|
|
|
sir_nemo2008 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 30.12.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 02.01.2011, 16:09
Titel:
|
|
|
|
|
ok, ich versuche es mal etwas umfangreicher, ich muss für mein studium ein programm schreiben das mathematische funktionen analysiert, nun ist das problem das ich mich in matlab fast gar nicht auskenne.
auf jeden fall haben wir uns überlegt das es am sinnvollsten wäre wenn wir das programm so aufbauen das wir als sichtbare oberfläche mehrere hintereinandergeschaltete GUI fenster benutzen, hintereinandergeschaltet beduetet einfach nur das man von dem einen fenster über das klicken auf einen weiter-button zum nächsten fenster gelangt, mit meiner beschreibung "jeweils" wollte ich nur ausdrücken das es zwas mehrere fenster sind die der reihe nach geöffnet werden sollen, aber da das 1. fenster in der reihe nur für das öffnen des 2. zuständig ist, und das 2. nur für das offnen des 3. und so weiter ist das problem im prinzip ja nur zwischen diesen beiden fenstern zu sehen.
das erste fenster in der reihe enthällt einfach nur einen text der den benutzer begrüßt und einen push-button der wenn er gedrückt wird das nächste fenster öffnet, die hab ich erreicht indem ich in die callbackfkt. des fensters openfig (' name von fenster 2.fig') geschrieben habe. dieser schritt funktioniert auch einwandfrei und es öffnet sich fenster 2. in diesem fenster ist nun nicht mehr nur ein begrüßungstext sondern eine radiobutton-gruppe über die man eine auswahl (über die art der funktion, zB ranzrationale funktionen) treffen kann. außerdem gibt es wieder einen push-botton mit dem man nachdem man seine auswahl getroffen hat zum nächsten fenster gelangen soll (-->also: man klickt auf den button und es wir je nach auswahl das nächste fenster geöffnet, für jede auswahlmöglichkeit gibt es logischerweise ein entsprechendes nun folgendes fenster. wir haben bisher nur den pfad für ganzrationale fuktionen erstellt.
das nun in diesem pfad nächste fenster enthält wiederum eine auswahlmöglichkeit (nun über den grad der funktion), diesmal allerdings in form eines pop-up-menüs und wiederum einen pushbutton (weiter-button) über den man wenn man seine auswahl in menü getroffen hat zum nächsten fenster gelangen soll.
ich hoffe das die beschreibung bis hier hin verständlich ist.
das problem was ich jetzt bei der sache habe ist, das ich wenn ich das jeweilige fenster (also ein fenster aus der reihe) über das kleine ("run-")dreieck im editor (also das fenster was beim ersten speichern eines GUIs automatisch erstellt wird und was die ganzen funktionen als code eithällt, ich glaube das ist ein m-file) öffne, dann klappt das alles auch wunderbar, aber wenn ich das fenster rechts von meinem command window (ich denke das nennt sich windows-explorer) anklicke oder durch einen link eines vorgeschalteten fensters zu diesem fenster gelange dann funktioniert das nicht mehr und es erscheind die fehlermeldung:
??? Attempt to reference field of non-structure array.
Error in ==> Auswahlfenster2>pushbutton1_Callback at 82
state = get(handles.pushbutton1,'Value')
Error in ==> gui_mainfcn at 96
feval(varargin{:});
Error in ==> Auswahlfenster2 at 42
gui_mainfcn(gui_State, varargin{:});
Error in ==>
@(hObject,eventdata)Auswahlfenster2('pushbutton1_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
der erste fehler verweißt auf diesen teil des codes:
[state = get(handles.pushbutton1,'Value')
if state == 1
openfig('Ganzratfktgrad2.fig')]
der zweite auf diesen teil:
[ feval(varargin{:});]
und der dritte auf diesen teil
[ gui_mainfcn(gui_State, varargin{:});]
ich hoffe das ihr jetzt mehr damit anfangen könnt,
danke für die hilfe
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 02.01.2011, 18:56
Titel:
|
|
|
|
sir_nemo2008 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 30.12.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 07.01.2011, 14:09
Titel:
|
|
ok, geschafft, vielen dank...
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| RSS
Hosted by:
Copyright © 2007 - 2025
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.
|
|