Portal > Foren > Java > Desktop-Applikationen und Grafik > Buttons mit eigenen Zeichnungen
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 04.03.2005, 08:58 Nach oben    #1
Java17
Gast
 
Beiträge: n/a
Standard Buttons mit eigenen Zeichnungen

Hallo,

ICh möchte gerne einzelne Buttons erstellen, die mit eigenem Muster versehen sind, wie Pfeile, Dreiecke, Rauten, aber auch technische Kreationen . Wie "bemale" ich diese Buttons? Beim draufklicken soll dann je eine Beschreibung der Buttons erfolgen.
Könnt ihr mir helfen?

Ich danke euch sehr!

Einen ganz lieben Gruß
Jasmin
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 04.03.2005, 10:45 Nach oben    #2
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.134
Standard

Das könnte dir helfen:
http://mail.phys-iasi.ro/Library/Com...ashed/ch22.htm
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 04.03.2005, 18:33 Nach oben    #3
Benutzer
 
Registriert seit: 15.02.2005
Beiträge: 33
Standard

Zitat:
Zitat von Java17
Hallo,

ICh möchte gerne einzelne Buttons erstellen, die mit eigenem Muster versehen sind, wie Pfeile, Dreiecke, Rauten, aber auch technische Kreationen . Wie "bemale" ich diese Buttons? Beim draufklicken soll dann je eine Beschreibung der Buttons erfolgen.
Könnt ihr mir helfen?
[..] Jasmin
Hi Jasmin, sicher kann ich dir helfen. Deshalb nachfolgend einmal etwas Beispielcode:

Code:
import java.awt.*;
import java.io.*;
import java.net.*;
import javax.swing.*;
 
public class MyJButton {
	private static ImageIcon ii1 = new ImageIcon("images/Edit24.gif"),
	                         ii2 = new ImageIcon("images/Help24.gif"),
	                         ii3 = new ImageIcon("images/History24.gif");
	
	private static JButton jb1 = new JButton(), 
	                       jb2 = new JButton(), 
						   jb3 = new JButton(), 
						   jb4 = new JButton();
	
    public static void main(String[] args) throws IOException {
        UIManager.put("Button.margin", new Insets(0,0,0,0));
        JPanel p = new JPanel();
        //
        // Achtung, die Namen der Dateien mit den Bildern für die JButtons anpassen ... s. auch oben
        p.add(new JLabel ("Ein ImageIcon"));
        p.add(new JButton(new ImageIcon(new URL("file:images/Bird.gif"))));
        
        
        
        jb1.setIcon(ii1);
        jb1.setIconTextGap(20);
        jb1.setText("Erster Button mit Text                                ");
        jb1.setHorizontalAlignment(SwingConstants.LEFT);
        jb1.setFont(new Font("Arial Narrow", 1, 12));
        jb1.setBorder(BorderFactory.createRaisedBevelBorder());
        //
        jb2.setIcon(ii2);
        jb2.setText("Zweiter Button mit Text                               ");
        jb2.setIconTextGap(20);
        jb2.setHorizontalAlignment(SwingConstants.LEFT);
        jb2.setFont(new Font("Courier New", 1, 12));
        //
        jb3.setIcon(ii3);
        jb3.setText("Dritter Button mit Text                               ");
        jb3.setIconTextGap(20);
        jb3.setHorizontalAlignment(SwingConstants.LEFT);
        jb3.setFont(new Font("Courier New", 1, 12));
        p.add(jb1);
        p.add(jb2);
        p.add(jb3);

        JFrame f = new JFrame("MyJButton - Beispiele");
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setContentPane(p);
        f.pack();
        f.setLocationRelativeTo(null);
        f.setVisible(true);
    }
}
Du musst nur die relativen Angaben für die Bilddateien anpassen, und schon müsste das Programm auf deinem Rechner funktionieren.

Für Aktionen, die nach dem Drücken des Buttons ausgelöst werden sollen, musst du noch den betr. JButtons einen Action-Listener zuweisen

Ansonsten, einfach fragen.

E.
__________________
No Sig
Entitaet ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.03.2005, 16:12 Nach oben    #4
Java17
Gast
 
Beiträge: n/a
Standard

HAllo Entitat,

vielen Dank für deinen Beispielscode, doch der Compiler meckert mir bei

jb1.setBorder(BorderFactory.createRaisedBevelBorde r()); beim r;

so konnte ich diesen leider nicht ausführen. Doch soweit ich deinen Code verstanden habe, würde ich mir auch da Bilder vom Internet runterladen.Aber ich habe allgemein schon sehr großeProbleme beim Laden von fertigen Bildern in meine JavaDatei. Er lädt mir einfach nichts runter. Aber vielleicht liegt es ja an meinen Dateien. Drum meine Frage:

Kannst du mir sagen, wie ich meine eigenen Buttons zeichnen kann.
Also nicht mir die Bilder vom Netz holen, sondern selber zeichnen.
Ich habe überhaupt keine Ahnung, wie dies gehen soll. Aber es muß doch möglich sein, seine eigenen Buttons mit Pfeilen, Schrägstrichen und so weiter
selbst zu erstellen.
Oder gibt es in Java sogar schon fertige .gif Dateien die eine Auswahl an solchen, eigentlich ganz einfachen Mustern, haben.

Ich danke dir und allen anderen, die mir helfen wollen und können.
Einen ganz lieben Gruß
JAsmin
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.03.2005, 19:17 Nach oben    #5
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.134
Standard

Du musst die Leerzeichen im Methodenaufruf entfernen.


Zeichnen kannst du über die Java2D-API (wenn du meinem Link oben folgst findest du eine Erklärung der Anwendung in Zusammenhang mit Swing).
Darüber gibt es in Suns Java-Tutorial ein ganzes Kapitel.

Wenn du .gif-Dateien willst solltest du dir mal die Nuvola Icons ansehen. Sind zwar PNG, aber wirklich verdammt hübsch.
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.03.2005, 14:34 Nach oben    #6
Java17
Gast
 
Beiträge: n/a
Standard Hilfe

Hallo,

ich habe mir den obrigen Link angesehen und komme damit überhaupt nicht klar.
Könnt ihr mir helfen? Hat vielleicht schon einer von euch selber eine Graphik für den JButton erstellt? Wie zeichne ich diese Graphik, z.B. zwei gegensätzliche Pfeile, und wie bringe ich dann diese Graphik auf den Button?
Ich wäre Euch sehr dankbar, wenn ihr mir dies an einem Beispielprogramm zeigen könntet.
Ich danke Euch vielmals!
Einen ganz lieben Gruß
Jasmin
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.03.2005, 17:49 Nach oben    #7
Benutzer
 
Registriert seit: 15.02.2005
Beiträge: 33
Standard

Zitat:
Zitat von Java17
[..]ich habe mir den obrigen Link angesehen und komme damit überhaupt nicht klar.
Könnt ihr mir helfen? Hat vielleicht schon einer von euch selber eine Graphik für den JButton erstellt? Wie zeichne ich diese Graphik, z.B. zwei gegensätzliche Pfeile, und wie bringe ich dann diese Graphik auf den Button?
Ich wäre Euch sehr dankbar, wenn ihr mir dies an einem Beispielprogramm zeigen könntet.
Ich danke Euch vielmals!
Einen ganz lieben Gruß
Jasmin
Hallo Jasmin,

das mit den Leerzeichen dürfte inzwischen klar sein, oder (siehe obigen Hinweis von DragonMaster)? Scheint ein Fehler der Board-Software zu sein.

Du kannst dir mit jedem Billig-Bildbearbeitungsprogramm Pfeile nach eigenem Gutdünken malen und diese dann auf einem JButton platzieren. Die Größe kannst du auch selbst bestimmen.
Wenn du folglich eine Grafik mit zwei gegensätzlichen Pfeilen zeichnest, verbindest du diese einfach mit dem JButton deiner Wahl nach der Methode in dem von mir geposteten Code.

Hth

Gruß

E.
__________________
No Sig
Entitaet ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.03.2005, 22:05 Nach oben    #8
Java17
Gast
 
Beiträge: n/a
Standard

Hallo,

bitte nochmals ganz langsam. Ich bin noch ziemlich "neu" in dieser Sparte.
Also, mit einem Bildbearbeitungsprogramm, z.B: welches? habe noch nie mit
einem gearbeitet? Ist die Endung von diesem Bildbearbeitungsprogramm .gif???? Speichert man üblicherweise solche Dateien unter images/.....gif??Oder kann ich das auch mit java hinkriegen? Nur wie?
Du hast in deinem Programm den UIManager verwendet? ISt der notwendig?Was bewirkt er?

Einen ganz lieben Gruß
Jasmin
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.03.2005, 00:47 Nach oben    #9
Benutzer
 
Registriert seit: 15.02.2005
Beiträge: 33
Standard

Hallo Jasmin,

wenn du ein Windows-Betriebssystem auf deinem Rechner hast, kannst du
z.B. mit dem "Klassiker" Paint arbeiten. Findest du üblicherweise unter
Start -> Programme -> Zubehör -> Paint

In der aktuellen Version (Windows XP Professional) kann das Programm
sogar die üblichen, in Java unterstützten Formate abspeichern. Also
.JPG, .GIF, .PNG.

Man muss solche Bilddateien nicht zwingend unter "images/..."
abspeichern, es geht auch auf der obersten Ebene. Es hat sich aber als
günstig erwiesen, die Bilder aus Gründen der Übersichtlichkeit alle in
einem separaten Ordner abzuspeichern.

Mit der Klasse UIManager wird das Folgende bewirkt:

Diese Klasse beeinflusst mit seinen diversen Methoden das aktuelle
Look&Feel, und hier dessen unterschiedliche Standardwerte. Wenn ich die
Zeile

UIManager.put("Button.margin", new Insets(0,0,0,0));

herauskommentieren würde, dann würde das Bild im ersten Button nicht
passgenau, sondern mit u.U. unterschiedlichen starken Rändern in X-
bzw. Y-Richtung abgebildet werden. Das hängt u.a. von den Bildabmaßen
und den jeweiligen Look&Feel-Einstellungen auf der betr. Maschine ab.
Auf die unterchiedlichen Standardwerte einzugehen, würde den Rahmen
hier jetzt ein wenig sprengen und erfordert ein wenig tiefere
Kenntnisse der Java-API.

Nähere Infos zu dieser Klasse (hier insbesondere die Unterschiede
zwischen den so genannten "user defaults", "look and feel defaults" und
"system defaults") findest du in der API von Sun.

Hoffe das war einigermaßen verständlich.

Gruß

E.
__________________
No Sig
Entitaet ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.03.2005, 16:48 Nach oben    #10
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.134
Standard

Zu den Icons:
Du musst sie erstmal downloaden.
Anschliessend entpacken (WinRAR o.ä.).

Wenn du nun irgendwo ein Java-Programm erstellst kannst du ein Unterverzeichnis anlegen (z.B. "icons") und die Icons, die du verwenden willst dorthin kopieren.
Verwenden kannst du sie dann relativ einfach:

Code:
JButton b = new JButton(new ImageIcon("icons/16x16/actions/filenew.png"));
Sofern du die Struktur beibehälst.
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.03.2005, 17:06 Nach oben    #11
Java17
Gast
 
Beiträge: n/a
Standard

Hallo,

vielen Dank für Eure Antworten, die
für mich sehr wertvoll sind.!

ICh bin nun gerade dabei mit
dem PaintProgramm zu zeichnen.
Ich kann dort interessante Zeichnungen
anfertigen, doch wenn ich diese anschließend
mit dem Attribut 32 * 32 Pixel versehe, ist die ganze
Zeichnung weg. Ich kann dann also das ganze noch
einmal auf der schon verkleinerten "Malfläche" zeichnen.
Ist aber gar nicht so einfach.
Denn wenn ich dies nicht tue, verschieben sich meine Buttons ins Unförmige, und
der selbst gezeichnete Button nimmt den ganzen Panel ein.
Ist die einzige Möglichkeit, diese Buttons vorher per
Java Programm zu verkleinern?

Danke!
Einen ganz lieben Gruß
Jasmin
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.03.2005, 17:29 Nach oben    #12
Benutzer
 
Registriert seit: 15.02.2005
Beiträge: 33
Standard

Hallo Jasmin,

wenn du schon mit Paint arbeiten möchtest, dann solltest du dir einige Dinge zunächst klar machen:

1. Paint arbeitet m.W. im Standard mit DIN-A4-Format, d.h. du solltest erst dein Bildformat auf z.B. 32x32 Pixel einstellen und erst _dann_
2. loslegen mit dem Zeichnen.

Andernfalls wird dir der Teil des Bildes abgeschnitten, der nicht auf die Größe von 32x32 Pixel passt.

Hth

Gruß

E.
__________________
No Sig
Entitaet ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.03.2005, 17:34 Nach oben    #13
Benutzer
 
Registriert seit: 15.02.2005
Beiträge: 33
Standard

Also, ich habe das jetzt gerade einmal mit der von mir eben erwähnten Methode versucht, und das Ergebnis sah so aus, wie im Paint-Programm.
Also alles war in Ordnung, ohne Verzerrungen etc.
__________________
No Sig
Entitaet ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.03.2005, 11:27 Nach oben    #14
Java17
Gast
 
Beiträge: n/a
Standard

Hallo,

vielen dank für eure Tips.Ich hoffe, ihr nimmt mir meine "Anfängerfragen" nicht allzu übel und sieht es mir nach.
Ich habe auf dem Windows XP kein anderes Zeichenprogamm als den PAint entdeckt.
Habe ich da vielleicht ein anderes Zeichenprogramm übersehen?
Mit welchen arbeitet ihr? Kann man sich diese vom Netz runterladen?
Nun, die Icons sind nun im .tar file runtergeladen. Und jetzt? Verzeiht meine Frage, entpacken mit WinRAR o.ä? Tja, was ist das ähnliche.?Denn WinRAR scheint nicht auf meinem Rechner zu sein.
Danke für eure Hilfe,

lieben Gruß
Jasmin
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.03.2005, 13:19 Nach oben    #15
Benutzer
 
Registriert seit: 15.02.2005
Beiträge: 33
Standard

Hallo,

hier einmal ein, zwei Links zu Icon-Editorprogrammen:

1. http://www.icon-editor.net/
2. http://www.iconcool.com/icon-editor.htm

Bildbearbeitungsprogramme gibt es ebenfalls im Netz wie Sand am Meer. Hier eine Empfehlung zu geben fällt schon etwas schwerer. Aber du kannst z.B. auf der folgenden Seite Paint Shop Pro in einer Demo-Version herunterladen

http://www.corel.com/servlet/Satelli...wnloads/Trials

Das Programm ist recht gut und kostet meines Wissens auch nicht so viel (129,00 USD). Es ist aber ein sehr leistungsfähiges Programm, sodass du schon ein wenig mehr machen solltest als nur einfache Icons.

Gruß

E.

PS: WinRAR erhältst du als Trial-Version auf der Homepage von WinRAR (Google is your friend)
__________________
No Sig
Entitaet ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.03.2005, 14:11 Nach oben    #16
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.134
Standard

Ein gutes Grafikprogramm ist Gimp (googlen - müsste aber gimp.org sein).
Ist aber etwas schwierig zu lernen, weil unglaublich umfangreich.
Photoshop von Adobe ist wesentlich einfacher - kostet aber auch ne Stange Geld.
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.03.2005, 08:38 Nach oben    #17
Java17
Gast
 
Beiträge: n/a
Standard Button nur ein großes schwarzes Quadrat???

Hallo,

nachdem ich meine Icons im Format vom 32*32 mit dem Editor unter

. http://www.icon-editor.net/


designed hab, wollte ich diese Icons, die ich mit der Endung .gif gespeichert habe,in mein Programm aufnehmen.
Doch bei der Anzeige des Buttons war nur ein 32 * 32 großes schwarzes Quadrat zu sehen. Was ist mit meiner Zeichnung passiert? Wenn ich dann das Easy Icon Maker Programm wieder aufrufe, sind die Icons so gezeichnet wie ich sie haben möchte.
Was ist geschehen? Was muß ich ändern bzw beachten?
Vielen Dank,
einen ganz lieben Gruß
Jasmin
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.03.2005, 09:00 Nach oben    #18
`B
Benutzer
 
Benutzerbild von `B
 
Registriert seit: 05.07.2004
Beiträge: 95
Standard

Hi Jasmin,

GIF´s sind eine Sache für sich, da das Format mit einem Patent versehen ist funktioniert es nicht mit allen Java-Methoden. Ich würde es an deiner Stelle einfach mal als PNG Speichern. Platzverbrauch ist nicht wirklich größer, teilweise sogar kleiner und Qualitätsverlust gibt es auch nicht. Danach sollte es dann klappen.

Liebe Grüße

Florian
__________________
`B ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.03.2005, 11:26 Nach oben    #19
Java17
Gast
 
Beiträge: n/a
Standard

Hi Florian,

leider geht es auch damit nicht.
Die Datei wird mir geladen, zeigt aber nur ein
Schwarzes Quadrat an. So als ob es mit Schwarz
übermalt wäre.
Ich versuchte gerade meine Icons im iconsMaker neu zu laden mit "Import from Graphics" und
siehe da, nur schwarze Kästchen.
Wenn ich diese gestern erstellten DAtein nur öffnen will mit "open", dann
meint der Editor "error open file for reading"
Das kann doch nicht sein. Ich habe gestern nichts anderes gemacht
als die Icons schwarz auf weißem Hintergrund zu zeichnen und dann als .gif datei abzuspeichern.
Ich sehe heute nur noch schwarz wenn er diese Dateien aufruft.
Als ob meine Icons eine schwarze Maske erhalten hätten.
Soll die Arbeit von gestern umsonst gewesen sein???
Kennst du einen "zuverlässigeren " IconMaker??

Einen ganz lieben Gruß
Jasmin
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
kleines problem mit events und buttons lost-prophet Allgemeine Java-Programmierung 3 01.06.2005 09:36
Textfelder und Buttons verschieben raZed Desktop-Applikationen und Grafik 3 10.05.2005 17:49
Gezeichnete Buttons färben? Java17 Desktop-Applikationen und Grafik 2 19.03.2005 16:26
Java Buttons mehreckig und Druckfunktionen? electronic_green Allgemeine Java-Programmierung 0 01.03.2005 10:18
Probleme mit anordnung von Buttons !!!!! slaYer`- Desktop-Applikationen und Grafik 1 30.09.2004 08:50


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:01 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45