![]() |
| | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Gast
Beiträge: n/a
|
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 |
|
| | Nach oben #2 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.134
|
Das könnte dir helfen: http://mail.phys-iasi.ro/Library/Com...ashed/ch22.htm
__________________ Patrick Gotthardts Weblog. |
| | |
| | Nach oben #3 | |
| Benutzer Registriert seit: 15.02.2005
Beiträge: 33
| Zitat:
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);
}
}
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 | |
| | |
| | Nach oben #4 |
| Gast
Beiträge: n/a
|
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 |
|
| | Nach oben #5 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.134
|
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. |
| | |
| | Nach oben #6 |
| Gast
Beiträge: n/a
|
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 |
|
| | Nach oben #7 | |
| Benutzer Registriert seit: 15.02.2005
Beiträge: 33
| Zitat:
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 | |
| | |
| | Nach oben #8 |
| Gast
Beiträge: n/a
|
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 |
|
| | Nach oben #9 |
| Benutzer Registriert seit: 15.02.2005
Beiträge: 33
|
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 |
| | |
| | Nach oben #10 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.134
|
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"));
__________________ Patrick Gotthardts Weblog. |
| | |
| | Nach oben #11 |
| Gast
Beiträge: n/a
|
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 |
|
| | Nach oben #12 |
| Benutzer Registriert seit: 15.02.2005
Beiträge: 33
|
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 |
| | |
| | Nach oben #14 |
| Gast
Beiträge: n/a
|
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 |
|
| | Nach oben #15 |
| Benutzer Registriert seit: 15.02.2005
Beiträge: 33
|
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 |
| | |
| | Nach oben #16 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.134
|
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. |
| | |
| | Nach oben #17 |
| Gast
Beiträge: n/a
|
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 |
|
| | Nach oben #18 |
| Benutzer Registriert seit: 05.07.2004
Beiträge: 95
|
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
__________________ |
| | |
| | Nach oben #19 |
| Gast
Beiträge: n/a
|
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 |
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ä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 |