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

Question Dialog Box

 

Philipp68
Forum-Century

Forum-Century


Beiträge: 167
Anmeldedatum: 21.10.15
Wohnort: Mannheim / Ilmenau
Version: R2014a, R2017a, R2019b
     Beitrag Verfasst am: 26.10.2020, 11:33     Titel: Question Dialog Box
  Antworten mit Zitat      
Hallo,

ich möchte gerne eine Question Dialog Box erstellen, die als Information einen Hinweis und eine Auflistung von Excel Files enthält. msgboxinfo ist ein Cell Array, in dem die Excel File Namen stehen. Ohne den Text "'Deleting Pattern also deletes Projects which include them!';'Pattern is used in Project:'" geht es auch. Wenn ich ihn benutze, kommt der Fehler "Error using vertcat Dimensions of arrays being concatenated are not consistent. Consider converting input arrays to the same type before concatenating."
Hat jemand eine Idee wie ich Info ändern kann, damit der Text und darunter die Auflistung der Excel Files erscheint?

Code:

    Info = ['Deleting Pattern also deletes Projects which include them!';'Pattern is used in Project:';msgboxinfo];
    decision = questdlg(Info,'Delete','Delete','Cancle','Cancle');
 
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 26.10.2020, 11:53     Titel:
  Antworten mit Zitat      
Hallo,

so sollte es gehen:
Code:
msgboxinfo = {'file1.xlsx', 'file2.xlsx'};  
Info = [{'Deleting Pattern also deletes Projects which include them!';'Pattern is used in Project:'};msgboxinfo']
decision = questdlg(Info,'Delete','Delete','Cancel','Cancel')


Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Philipp68
Themenstarter

Forum-Century

Forum-Century


Beiträge: 167
Anmeldedatum: 21.10.15
Wohnort: Mannheim / Ilmenau
Version: R2014a, R2017a, R2019b
     Beitrag Verfasst am: 26.10.2020, 12:03     Titel:
  Antworten mit Zitat      
Hallo Harald, danke für deinen Vorschlag. Die Anzahl an Excel Files wird automatisch ermittelt und variiert.
Ich habe eine Lösung gefunden, die so klappt, wie es haben möchte. Lag eben an der Struktur, im Cell Array nochmal ein nxn Cell Array.

Code:

    msgboxinfo = cell(1,x_pos);
    for i = 1:x_pos
        msgboxinfo{i,1} = folder{1,i};
    end

    [size_msgboxinfo,~] = size(msgboxinfo);
   
    Info = cell(2+size_msgboxinfo,1);
    Info{1,1} = 'Deleting Pattern also deletes Projects which include them!';
    Info{2,1} = 'Pattern is used in Project:';
    for i = 1:size_msgboxinfo
        Info{2+i,1} = msgboxinfo{i,1};
    end
    decision = questdlg(Info,'Delete','Delete','Cancle','Cancle');
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 26.10.2020, 15:12     Titel:
  Antworten mit Zitat      
Hallo,

die Frage ist, ob es so kompliziert sein muss.
Bei der ersten for-Schleife bin ich etwas überrascht, denn die Vorbelegung scheint mir nicht zur Indizierung zu passen. Außerdem musst du hier doch nur transponieren?

Auch die zweite for-Schleife sieht mir nach einem Overkill aus.

Ich würde denken, dass mein Ansatz schon ausreichen sollte. Falls nicht, bitte mal ein konkretes Beispiel von msgboxinfo als .mat anhängen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Philipp68
Themenstarter

Forum-Century

Forum-Century


Beiträge: 167
Anmeldedatum: 21.10.15
Wohnort: Mannheim / Ilmenau
Version: R2014a, R2017a, R2019b
     Beitrag Verfasst am: 27.10.2020, 11:31     Titel:
  Antworten mit Zitat      
Hallo,

also ich erstelle Excel Dateien, die unterschiedliche Bildnamen enthalten. Diese Dateien werden für eine externe Hardware genutzt. Wenn ich in meiner GUI ein Bild, das in einer Datei enthalten ist, löschen will, soll vorher jede Datei gescannt werden. In msgboxinfo stehen die Namen der Excel Dateien, in denen dieser Bildname auftaucht. Je nachdem wie viele Dateien diesen Namen enthalten, kann msgboxinfo 1xn groß sein. Deswegen frage ich nach der ersten Schleife die Größe ab. Dann bilde ich ein Cell Array, in dem unter {1,1} und {1,2} mein Text der Quest Dialog Box steht und darunter in {1,3} bis {1,n} die Namen der Excel Dateien.

Info.mat
 Beschreibung:

Download
 Dateiname:  Info.mat
 Dateigröße:  315 Bytes
 Heruntergeladen:  144 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 27.10.2020, 12:19     Titel:
  Antworten mit Zitat      
Hallo,

info enthält ja schon die beiden Überschriften. Wenn ich die weglasse, kann ich sie mit meinem Vorschlag direkt wieder einfügen:

Code:
load info
Info(1:2) = [];
Info2 = [{'Deleting Pattern also deletes Projects which include them!';'Pattern is used in Project:'};Info]


Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Philipp68
Themenstarter

Forum-Century

Forum-Century


Beiträge: 167
Anmeldedatum: 21.10.15
Wohnort: Mannheim / Ilmenau
Version: R2014a, R2017a, R2019b
     Beitrag Verfasst am: 27.10.2020, 12:29     Titel:
  Antworten mit Zitat      
Hm seltsam, das ist doch das gleiche, wie in meinem ersten Beitrag. Nur war eben das Problem, dass ich in Info einen String in {1,1} und {1,2} und nochmal ein 1x3 Cell Array separat in {1,3} hatte.
Ich schicke dir nochmal die .mat Datei, wodurch der Fehler aufgetreten ist.

Info.mat
 Beschreibung:

Download
 Dateiname:  Info.mat
 Dateigröße:  328 Bytes
 Heruntergeladen:  139 mal


Zuletzt bearbeitet von Philipp68 am 27.10.2020, 12:36, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 27.10.2020, 12:35     Titel:
  Antworten mit Zitat      
Hallo,

nicht ganz. Die geschweiften Klammern um die ersten beiden Teile sind ein entscheidender Unterschied.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Philipp68
Themenstarter

Forum-Century

Forum-Century


Beiträge: 167
Anmeldedatum: 21.10.15
Wohnort: Mannheim / Ilmenau
Version: R2014a, R2017a, R2019b
     Beitrag Verfasst am: 27.10.2020, 12:37     Titel:
  Antworten mit Zitat      
Achja, jetzt sehe ich es Rolling Eyes
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.