So ändern Sie java-Symbol in einem JFrame
Ok, also ich habe seit Jahren das man ruhig ein bisschen. Ich bin ziemlich neu in java, dachte aber, dass wäre dies ein leichtes. Ive versuchte gerade über jede Art und Weise beantwortet worden, die auf dieser Seite und immer noch kein Glück, und in der Regel, wenn ich hier schauen, ich bin in der Lage zu finden, eine Antwort, die passt, was ich Suche. Weiß jemand, wie man ändern Sie die Java-Symbol in der oberen Ecke des JFrame. Ich bin mir ziemlich sicher, dass seine nicht mein Datei Pfad entweder, weil alle meine Bilder sind im gleichen Ordner und Sie funktionieren alle, das ist das einzige, das ich kann nicht scheinen, um zu arbeiten.
Dies ist der erste Teil mein code für das Hauptmenü von dem Programm, alles funktioniert, außer wenn ich versuche, fügen Sie das Symbol Bild. Der code, den ich eingegeben habe unten nicht alles haben, was Sie für die JFrame IconImage, habe ich es entfernt da es nicht funktioniert hat. Also, wenn es jemanden gibt, der weiß, wie es funktioniert mit diesem code, wäre sehr dankbar, vielen Dank im advanced!
public class MainFrame
{
private MyPanel main;
private MyPanel2 create;
private MyPanel3 update;
private MyPanel4 find;
JFrame frame = new JFrame("Main Menu:");
public void displayGUI()
{
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel contentPane = new JPanel();
contentPane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
contentPane.setLayout(new CardLayout());
main = new MyPanel(contentPane, this);
create = new MyPanel2(contentPane);
update = new MyPanel3(contentPane);
find = new MyPanel4(contentPane);
contentPane.add(main, "Main Menu");
contentPane.add(create, "Create Part");
contentPane.add(update, "Update Part");
contentPane.add(find, "Find Part");
frame.setLocation(200, 200);
frame.setSize(700, 580);
frame.setContentPane(contentPane);
frame.setVisible(true);
}
- Poste das entsprechende nur code. Wir wollen nicht durchsuchen Sie Ihre Wand-code für den Teil, wo das Symbol des Rahmens verändert wird. Dann sagen Sie uns, was Sie erwarten, dass dieser wichtige Teil des Codes zu tun, und was tut es stattdessen.
- Dies ist der Teil des Codes, der das Symbol "ändern" Teil sein sollte. Ich habe versucht viele verschiedene Möglichkeiten, den code eingeben, aber dies ist, wie der code für das JFrame ist ohne das Symbol "ändern" - code in es.
- Zeigen Sie Ihre besten versuchen Sie, und sagen Sie uns, was passiert. Hinweise: docs.oracle.com/javase/6/docs/api/javax/swing/..., docs.oracle.com/javase/6/docs/api/javax/swing/..., docs.oracle.com/javase/tutorial/uiswing/components/frame.html
- Nichts passiert, auf jeden Versuch, nichts ändert sich an alle sein, wie ich nie getippt, alles in
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe eine Antwort für Sie. Stellen Sie zunächst sicher, dass die Bilder in einem Ordner, nicht ein Paket. Nächste, fügen Sie diese Zeile von code:
Dieser code ruft das Bild von der Klasse Weg, und gibt es als Bild-Symbol, und dann setzt es es. Dies sollte das Bild-Symbol, um die Anwendung. Wenn nicht, dann Sag es mir.
EDIT: Nach dem Sie mir gesagt, dass das nicht funktioniert dann habe ich beschlossen, eine zweite Riss an es...
Zunächst legen Sie Ihre Bilder in einem völlig separaten Ordner. Oft nenne ich diese /res. Als Nächstes setzen Sie Ihr Bild in es. Nun, für die Beladung nahm ich eine völlig andere route. Ich habe mich entschieden, ImageIO, anstatt der Standard-Beladung. Um das Bild laden, verwenden Sie diesen code:
ImageIO
funktioniert viel besser für das laden von Bildern. Wenn dies immer noch nicht funktionieren, dann bitte mir sagen.Wenn Sie möchten, exportieren Sie diese als JAR-dann legen Sie einen Ordner mit dem gleichen Namen, wie Sie das Programm in das gleiche Verzeichnis wie die JAR.
Beispielsweise in einem NetBeans-Projekt, erstellen Sie eine Ressourcen-Ordner in den src-Ordner.
Setzen Sie Ihre Bilder (jpg, ...) gibt.
Ob Sie
ImageIO
oderToolkit
(einschließlich getResource),Sie müssen eine führende /in Ihrem Pfad zu der image-Datei:
Wenn dieser code befindet sich in Ihrer
JFrame
Klasse, das Bild ist Hinzugefügt, um den frame als ein Symbol in der Titelleiste.Das funktioniert ziemlich gut für mich.
Fügen Sie einfach diese, nachdem Sie erstellt haben Ihre JFrame.
Hinweis:- fav.png ist der name des symbols
versuchen, diesen code setzen Sie nach diesen code: