Matlab Kontrolle + Eingabe der Taste in der Abbildung

9

Ich möchte erfassen, wenn der Benutzer die Strg-Taste gedrückt hält und die Eingabetaste in einem Zahlenfenster drückt. Hinweis: Dies sind die Standardtasten für "Aktuellen Abschnitt auswerten" im Editor.

Siehe Beispielcode unten:

%Vor%

Um das oben genannte in einer aktiven Datei im Editor zu speichern und die Funktion auszuführen, muss der Editor geöffnet sein (das ist wichtig !!).

Drücken Sie bei aktiver Figur eine beliebige Taste - & gt; Der ausgewählte Schlüssel wird in das Terminalfenster geschrieben. Wenn Sie jedoch Control gedrückt halten und die Eingabetaste (Return) drücken, wird dies nicht erfasst, sondern Matlab versucht im Editor "Aktuellen Abschnitt auswerten" (oder Zelle, wie es früher genannt wurde) (unabhängig davon, ob die Figur die Fokus). Das wirft natürlich als Fehler ...

Ich habe Matlab Support kontaktiert und dies ist "erwartetes Verhalten!". Ich kann (fast) sehen, warum es eine gute Idee für Demos ist - aber für professionelle Anwendungen, die in Matlab laufen, denke ich persönlich, dass dieses "Feature" ein Bug ist !!

Hinweise

  1. Wenn der Editor geschlossen ist, wird das Steuerelement + enter in der Figur
  2. erfasst
  3. In bereitgestellten Anwendungen wird das Steuerelement + enter erfasst.
  4. Wenn ich die Verknüpfung "Aktuellen Abschnitt auswerten" manuell ändere, wird control + enter erfasst.

Ich habe versucht, eine Reihe von Dingen zu lösen, aber keine haben funktioniert, zum Beispiel den Editor zu verstecken oder Editor-Status auf false zu setzen (keine dieser Lösungen sind akzeptabel) - Ich habe versucht zu sehen, woran ich arbeiten könnte ein kleiner Testfall ...):

%Vor%

Der einzige Weg, wie ich es zum Laufen bringen kann, besteht darin, alle Editor-Dateien beim Starten der GUI zu schließen und sie dann beim Schließen der GUI wieder zu öffnen (aus akzeptablen Gründen keine akzeptable Lösung !!). )

Ich habe darüber nachgedacht, den Shortcut-Key (Preferences-Keyboard-Shortcuts) des "Evaluate Current Section" - & gt; habe aber keine Möglichkeit gefunden, es von der Kommandozeile aus zu tun, und setze es dann wieder zurück, wenn du fertig bist. Wenn dies schnell ist, können Sie es tun, wenn der Benutzer die Steuertaste drückt und loslässt.

Also, was frage ich:

Wenn es mir möglich ist, brauche ich eine Lösung, die überall funktioniert - als ob ich sie zur Arbeit bringen könnte, wird sie in einer neuen Add-on-Funktion in meine Matlab GUI Toolbox . - die von Menschen auf der ganzen Welt verwendet wird.

  1. Weißt du, wie man die Tastaturkürzel von der Kommandozeile aus ändert - wenn ja wie!
  2. Irgendwelche anderen Vorschläge?
  3. Meine andere Idee ist es, meine Verknüpfung zu einer anderen Tastenkombination zu ändern - aber wo liegt der Spaß daran? :) (Ich werde immer noch das Problem haben, wenn ein Benutzer irgendwo die aktuelle Zelle in meine neue Kombination umgewandelt hat ...)

P.S. Danke für das Lesen dieser weit unten !! :)

    
matlabgui 02.07.2015, 12:03
quelle

1 Antwort

0

Warum gehst du nicht zum home> Preferences > keyboard > Shortcut und änderst es dort?

Sie müssen nur Ctrl + Enter in der schwarzen Box oben auf der Seite drücken, um den entsprechenden Befehl zu durchsuchen, der hier ist: Aktuellen Abschnitt auswerten und ändern, was Sie wollen.

Bitte beachten Sie, dass Sie nur Ihre Fenster ausschneiden müssen (docken Sie sie ab). Dann, wenn Sie auf Ctrl + Enter klicken, wird es tun, was auch immer Sie möchten.

Ich hoffe, Sie finden diese Antwort hilfreich.

    
Iman 21.07.2015 15:14
quelle