Verfasst am: 17.08.2018, 08:05
Titel: fehlendes Icon nach kompilieren von GUI
Hallo liebes Forum,
ich habe ein Programm geschrieben, das mehrere tausend Zeilen lang ist. Deswegen werde ich an dieser Stelle ein anderes kleines Beispiel-Programm zeigen, um mein Problem zu erläutern.
Bei meinem Problem geht es um das Icon. Nach dem starten meines Programms (exe) soll ein Splash-Screen erscheinen. Dies funktioniert.
Wenn ein Programm geöffnet ist, hat man ja immer in der Taskleiste ein Icon, das zum zum Programm gehört. Dies soll auch bei meinem Programm der Fall sein. Dafür möchte ich ein von mir gewähltes Icon einsetzen. Wählt man kein bestimmtes, wird ein default_icon von Matlab gewählt.
Wenn ich mit
-W main:
kompiliere, klappt die Sache mit dem Icon. Allerdings erscheint der Splash-Screen nicht sondern die Eingabeaufforderung von Windows.
Wenn ich mit
-W Winmain:
kompiliere, erscheint der Splash-Screen. Allerdings wird in der Taskleiste nicht das von mir gewählte Icon verwendet sondern das Standard-Icon von Matlab.
Fazit...ich möchte sowohl das Icon als auch den Splash-Screen sehen. Ich könnte mir vorstellen, dass es da eine simple Lösung gibt, auf die ich nicht komme und die ich im Netz auch nicht finden konnte. Vielleicht könnt ihr das mit meinem Programm mal testen und euch ein eigenes Bild machen
Code:
current_path = uigetdir(pwd,'Daten Ordner Auswählen'); % Wähle den Ordner mit den m-files, der fig, etc. aus addpath(genpath(current_path)); % Füge diesen und die Unterordner zum Matlabpfad hinzu
target_path = uigetdir(current_path,'Ziel Ordner Auswählen'); % Wähle den Ziel Ordner für das Standalone Programm aus
icon = strcat({'-r'},{' '},{''''},current_path, {'\'}, {'icon.ico'''}); % Pfad des Icons
choice = questdlg('Die GUI kann zum Start entweder den Splash Screen ODER die Eingabeaufforderung zum Debuggen anzeigen', ...
'Bitte auswählen','Icon','Eingabeaufforderung','Icon');
Ich kann das Icon leider nicht anhängen und weiß nicht wieso. Vielleicht habt ihr ein Icon, das ihr
icon.ico
nennen könnt, damit ihr mein Programm testen könnt.
die Verwendung von MATLAB Compiler deutet auf kommerziellen Einsatz hin. Dann wäre eine Kontaktaufnahme mit dem Technischen Support von MathWorks eine Alternative.
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 ;)
mein Programm wird nicht kommerziell eingesetzt. Es geht nur darum, dass ich lediglich eine Netzwerklizenz habe und somit für den Feldeinsatz, den ich für ein Uniprojekt mache, eine standalone benötige.
Ich habe mit dem Matlab-Support gesprochen, der mir das hier gesagt hat:
MCC does not provide a supported/documented way to specify an icon. If you want to choose an icon for your application, you have to use the Application Compiler to specify icon and splash screen.
the way the application is built differs between MCC and Application Compiler. Just create an application compiler project and then later compile it programmatically using the deploytool function.
Ich gebe mich allerdings mit der Antwort nicht zufrieden. Ich KANN ja ein Icon wählen und auch ein splash screen. Ich kriege es allerings nicht hin beides gleichzeit zu machen. Ich weiß nicht, ob ich die Antwort einfach akzeptieren soll. Ich habe irgendwie das Gefühl, dass der Supporter sich gar nicht die Mühe gemacht hat richtig darüber nachzudenken.
Hast du's denn mal mit dem Application Compiler versucht?
Nochmal nachfragen kann sicher nicht schaden...
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 ;)
Ich habe nochmal nachgefragt. Warte auf eine Antwort.
Ich habe es auch mit dem application compiler versucht allerdings habe ich recht viele Daten. Es hat nicht geklappt. Habe auch zwei p-Files, die kompiliert werden müssen und ich weiß nicht, ob das vielleicht ein Problem ist.
Bedeutet was genau? Problem mit Icon und Splashscreen? Oder bekommst du eine Fehlermeldung? Welche?
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 ;)
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
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.