Hallo
Ich habe das Problem, dass ich es nicht schaffe das Icon im HelpMenu durch mein eigenes zu ersetzen. Ich rufe das Menü wie folgt auf:
void Outlook2Unix::aboutApp() { KHelpMenu *helpMenu = new KHelpMenu(this,&kaboutData); helpMenu->aboutApplication(); }
Dort wird aber leider nur das Standard-Icon angezeigt. Kann mir jemand beschreiben, wie ich dieses Icon ändern kann ?
Hast Du ein .desktop-File für Dein Programm?
Dort steht so etwas drin:
# KDE Config File [Desktop Entry] Type=Application Exec=kdirstat -caption "%c" %i %m Icon=kdirstat.png MiniIcon=kdirstat.png DocPath=kdirstat/index.html
Im Makefile.am dann:
install-data-local: $(mkinstalldirs) $(kde_appsdir)/Utilities/ $(INSTALL_DATA) $(srcdir)/kdirstat.desktop $(kde_appsdir)/Utilities/kdirstat.desktop $(mkinstalldirs) $(kde_icondir)/locolor/32x32/apps/
Ich habe das Destop File, dort hatte ich auch alles so eingetragen nur will es nicht funktionieren. Gerade ist mir aufgefallen, das make install das programm unter einem anderen Namen abspeichert! Das Programm heistt z.B: KMeinProgramm, make install installiert unter /opt/kde3/bin das programm unter folgendem Namen: i386-linux-KMainProgramm ???? Vieleicht liegt es ja daran? Diesen Umstand hätte ich gerne als erstes geklärt, kann aber in den durch KDevelop erstellten Makefiles nirgens finden wo dies geschieht. Am nächsten wird wohl folgende Stelle sein: binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) $(mkinstalldirs) $(DESTDIR)$(bindir) @list='$(bin_PROGRAMS)'; for p in $$list; do \ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ if test -f $$p \ || test -f $$p1 \ ; then \ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f; \ else :; fi; \ done Wird dann so in der Console wiedergegeben! /bin/sh ../admin/mkinstalldirs /opt/kde3/bin /bin/sh ../libtool --mode=install /usr/bin/install -c -p KMeinProgramm /opt/kde3/bin/i386-linux-KMainProgramm /usr/bin/install -c -p KMainProgramm /opt/kde3/bin/i386-linux-KMainProgramm Nur kann ich hier nicht finden warum es denn so ist gruß Frank