Toolbar

Status
Nicht offen für weitere Antworten.

IwiS

Bekanntes Mitglied
Hallo alle zusammen,

ich schreibe ein Programm, das mir bei meinem PC-Alltag, inform einer Schnellzugriffstoolbar, helfen soll. Nun möchte ich aber nicht, dass ich das Programm in der Taskleiste angezeigt bekomme. Gibt es eine Möglichkeit, dass ich ein Programm laufen lassen kann, ohne dass ich es in der Taskleiste angzeigt bekomme?

Vielen Dank für Antworten,
IwiS
 
G

Gast2

Gast
Nimm statt nem JFrame nen normales [JAPI]JWindow[/JAPI], das sollte dann nicht in der Taskleiste angezeigt werden.
 

IwiS

Bekanntes Mitglied
Hallo zusammen,

jetzt habe ich noch ein Problem. Ich habe jetzt nur ein JWindow, jedoch habe ich darin ein JTextField eingebaut, was aber nicht editierbar ist. Ich habe schon bei Google die Lösung gefunden, dass man bei JWindow als "owning parent" einen JFrame angeben kann, ich verwende allerdings kein JFrame in meinem Programm. Gibt es jetzt noch eine andere Möglichkeit, in einem JWindow ein funktionierendes JTextField einzufügen?

Danke schon im Vorraus für Antworten,
IwiS
 

L-ectron-X

Gesperrter Benutzer
Probiers mal aus:
Java:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class MyWindow {
   private JTextField txtField;
   private JButton okButton;
   
   public MyWindow() {
      final JDialog window = new JDialog();
      window.setUndecorated(true);
      window.getContentPane().setBackground(Color.PINK);
      window.setLayout(new GridBagLayout());
      GridBagConstraints gbc = new GridBagConstraints();
      
      txtField = new JTextField(15);
      okButton = new JButton("OK");
      okButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            window.dispose();
         }
      });
      
      gbc.anchor = GridBagConstraints.WEST;
      gbc.insets = new Insets(30, 10, 0, 0);
      window.add(new JLabel("Eingabe:"), gbc);

      gbc.gridy = 1;
      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.weightx = 1.0;
      gbc.insets = new Insets(0, 10, 30, 5);
      window.add(txtField, gbc);
      
      gbc.gridx = 1;
      gbc.fill = GridBagConstraints.NONE;
      gbc.weightx = 0.0;
      gbc.insets = new Insets(0, 0, 30, 10);
      window.add(okButton, gbc);

      window.pack();
      window.setLocationRelativeTo(null);
      window.setVisible(true);
   }

   public static void main(String[] args) {
      try {
         UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
      }
      catch(Exception e) {
         e.printStackTrace();
      }

      SwingUtilities.invokeLater(new Runnable() {
         public void run() {
            new MyWindow();
         }
      });
   }
}
 

GUI-Programmer

Top Contributor
Hi,

ich brauche unbedingt ein JWindow, da gibt es keine andere Möglichkeit.

IwiS

Ja und??? Dann benutz doch eines. Ich sehe da jetzt nichts was dagegen sprechen würde. L-ectron-X hat dir doch schon ein gutes Beispiel geliefert. Du musst uns schon mitteilen, was nicht funktioniert (falls denn was nicht funktioniert!).
 

bERt0r

Top Contributor
Das steht aber auch, dass es mit einem TextField funktionieren sollte. Mit Java7 solltest du beim AWT und Swing mischen keine Probleme mehr haben.
 

GUI-Programmer

Top Contributor
Habe L-ectron-X Beispiel getestet mit jdk 1.7.0 kompiliert und mit jre 1.7.0... ausgeführt. Sowohl per java als auch per javaw, der Bug bestätigt sich bei mir nicht. Das JTextField bekommt immer den Fokus, sowohl direkt beim Aufploppen des JWindows als auch wenn es den Focus wieder erhält oder man in das JTextField klickt.

Mein System:
Betriebssystem: Windows 7 HomePremium 64 bit
Prozessor: Intel Core i5 650 @3.20 GHz
Arbeitsspeicher: 4 GB Ram
Grafikkarte: ATI Radeon HD 5700 Series

Auf was für Systemen habt ihr denn das ganze getestet?
 

IwiS

Bekanntes Mitglied
Hallo,

danke für eure Bemühungen. Ich habe das Problem jetzt auf einen anderen Weg gelöst. Nun habe ich aber zwei neue Fragen. Kann ich mein Programm im Quellcode i-wie in den Autostart des Systems packen? Wie kann ich ein JDialog unverschiebbar machen?

Danke für die Antworten im Vorraus,
IwiS
 
A

adsasdasd

Gast
Habe L-ectron-X Beispiel getestet mit jdk 1.7.0 kompiliert und mit jre 1.7.0... ausgeführt. Sowohl per java als auch per javaw, der Bug bestätigt sich bei mir nicht. Das JTextField bekommt immer den Fokus, sowohl direkt beim Aufploppen des JWindows als auch wenn es den Focus wieder erhält oder man in das JTextField klickt.

Mein System:
Betriebssystem: Windows 7 HomePremium 64 bit
Prozessor: Intel Core i5 650 @3.20 GHz
Arbeitsspeicher: 4 GB Ram
Grafikkarte: ATI Radeon HD 5700 Series

Auf was für Systemen habt ihr denn das ganze getestet?

In seinem Beispiel wird auch ein JDialog verwendet und nicht JWindow.
 

bERt0r

Top Contributor
Zu 1: Google mal Windows Autostart Jar
Zu 2: Setzt den Dialog undecorated (setUndecorated(true))
 

truesoul

Top Contributor
Hallo,

danke für eure Bemühungen. Ich habe das Problem jetzt auf einen anderen Weg gelöst. Nun habe ich aber zwei neue Fragen. Kann ich mein Programm im Quellcode i-wie in den Autostart des Systems packen? Wie kann ich ein JDialog unverschiebbar machen?

Danke für die Antworten im Vorraus,
IwiS

Eine ausführbare Datei von deinen Programm in den Autostartordner packen?
setUndecorated()
 

IwiS

Bekanntes Mitglied
Hallo,

okay, das Problem mit dem Autostart ist geklärt, obwohl meine Frage nicht beantwortet wurde, ist jetzt aber auch egal. Ich habe meinen Dialog undecorated() gesetzt, doch ich kann mein Fenster problemlos verschieben.

lg IwiS
 

IwiS

Bekanntes Mitglied
Hallo,

ich arbeite mit Windows 7 (64-bit). Hier ist der bisherige Code:

Java:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.Properties;
import javax.swing.*;
import com.jtattoo.plaf.smart.SmartLookAndFeel;

public class Toolbar extends JDialog 
{
 JToolBar toolbar;
 public static void main(String[] args)
 {
  try
  {
   UIManager.setLookAndFeel("com.jtattoo.plaf.aluminium.AluminiumLookAndFeel");
  }
  catch(Exception e)
  {
   e.printStackTrace();
  }
  Toolbar tool = new Toolbar();
  tool.setLocation(300, 0);
  tool.setSize(1000, 100);
  tool.setUndecorated(true);
  tool.setVisible(true);
 }
 public Toolbar()
 {
  toolbar = new JToolBar();
  toolbar.setFloatable(false);
  ImageIcon image = new ImageIcon("firefox.png");
  JButton button = new JButton(image);
  button.addActionListener(new ActionListener()
  {
   public void actionPerformed(ActionEvent ev)
   {
	try
	{
	Process p = Runtime.getRuntime().exec("\"D:Programme\\Mozilla Firefox\\firefox\"");
	}
	catch(IOException e)
	{
     e.printStackTrace();
	}
   }
  }
  );
  toolbar.add(button);
  ImageIcon image2 = new ImageIcon("thunderbird.png");
  JButton button2 = new JButton(image2);
  button2.addActionListener(new ActionListener()
  {
   public void actionPerformed(ActionEvent ev)
   {
	try
	{
     Process p2 = Runtime.getRuntime().exec("\"D:Programme\\Thunderbird\\thunderbird\"");
	}
	catch(IOException e)
	{
     e.printStackTrace();
	}
   }
  }
  );
  toolbar.add(button2);
  add(toolbar);
 }
}

lg IwiS
 

L-ectron-X

Gesperrter Benutzer
Ich habe auch ein Windows 7 64Bit. Dein Programm funktioniert bei mir (LAF deaktiviert). Ich kann die Toolbar nicht verschieben. Das kann eigentlich auch nicht möglich sein, weil die Titelleiste ausgeblendet ist, und ein Fenster nur durch Klicken in die Titelleiste mit anschließendem Ziehen verschoben werden kann.
Einen MouseListener hast du auch nicht an deinem Dialog registriert...
...ich kann keinen Fehler oder Fehlverhalten feststellen. :bahnhof:
 

IwiS

Bekanntes Mitglied
Hallo,

wenn ich das Programm ausführe, kann ich es an eine beliebige andere Stelle ziehen. Mein anders Problem wäre noch, dass nach dem Start des Programmes immer der hinterste Button makiert wird. Kann ich das i-wie verhindern?

lg IwiS
 

L-ectron-X

Gesperrter Benutzer
Versuchs mal mit
Java:
button.setFocusable(false);
button2.setFocusable(false);

Welche Java-Version benutzt du zum Ausführen des Programmes?
 

IwiS

Bekanntes Mitglied
Hallo,

danke, der Tipp für die Buttons hat funktioniert. Ich benutze Java 7 Update 2.

lg IwiS
 

L-ectron-X

Gesperrter Benutzer
Also beim besten Willen.
Ich habs jetzt mal unter Ubuntu mit OpenJDK7 probiert. Das Fenster ist nicht verschiebbar. Allerdings wird in der Taskleiste ein Java-Symbol angezeigt.
 

IwiS

Bekanntes Mitglied
Hi,

ich glaube ich weis, woran der Fehler liegt. Du sagtest ja bei dir sei die Titelleiste ausgeblendet, bei mir aber nicht. Du hast wahrscheinlich ein JWindow verwendet, oder?

lg IwiS
 

L-ectron-X

Gesperrter Benutzer
Nein. Ich habe mein Codebeispiel und deinen Code unverändert ausgeführt. Darin wird jeweils ein JDialog verwendet, dessen Titelleiste mit setUndecorated(true) ausgeblendet wurde.
Wie gesagt: auch dein Beispiel funktioniert bei mir unter Windows 7 und Ubuntu.

[EDIT]Der TO hat einen weiteren Beitrag zum Thema erstellt, welcher hier zu finden ist.[/EDIT]

Thema geschlossen!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Aufklappbares Panel in Toolbar AWT, Swing, JavaFX & SWT 6
J Suche nach einer horizontal aufklappbaren Toolbar AWT, Swing, JavaFX & SWT 1
E JavaFX MenuBar und ToolBar zu einem Bereich AWT, Swing, JavaFX & SWT 3
T JavaFX Toolbar resizable AWT, Swing, JavaFX & SWT 4
dzim Toolbar - Problem bei enable/disable von Buttons AWT, Swing, JavaFX & SWT 6
A AWT Java Toolbar AWT, Swing, JavaFX & SWT 6
P SWT Toolbar mit nur einer Schaltfläche und einem Textfeld AWT, Swing, JavaFX & SWT 2
B Applet Button oder Toolbar in einem Applet AWT, Swing, JavaFX & SWT 5
C Swing Toolbar zur Laufzeit austauschen AWT, Swing, JavaFX & SWT 5
padde479 Suche eine Komponente (->ToolBar) AWT, Swing, JavaFX & SWT 7
S SWT perspektive mit toolbar oder eventkomponente AWT, Swing, JavaFX & SWT 3
B Buttons in Toolbar einbinden AWT, Swing, JavaFX & SWT 6
S SWT ToolBar Buttons mit Text und Bild AWT, Swing, JavaFX & SWT 15
C Swing Andocken einer ToolBar verhindern AWT, Swing, JavaFX & SWT 3
S Dropdown-Menü wie auf der Eclipse-Toolbar AWT, Swing, JavaFX & SWT 7
G Verliere Referenz von Toolbar bei mehreren Fenster AWT, Swing, JavaFX & SWT 3
W SWING - Aktionen in Toolbar hinzufügen AWT, Swing, JavaFX & SWT 2
B Toolbar, Toolbar In Toolbar, alterna zu JToolbar AWT, Swing, JavaFX & SWT 3
G SWT Toolbar: Toolitem entfernen und wieder hinzufügen AWT, Swing, JavaFX & SWT 16
S ToolBar in GridbagLayout AWT, Swing, JavaFX & SWT 5
S Toolbar wie im Explorer? oder mozilla erstellen AWT, Swing, JavaFX & SWT 5
S Tooltip auf Toolbar-Icon AWT, Swing, JavaFX & SWT 6
G Toolbar AWT, Swing, JavaFX & SWT 5
B PNG-Icons in Toolbar einbinden AWT, Swing, JavaFX & SWT 3
G Abstand zwischen den Buttons in einer Toolbar AWT, Swing, JavaFX & SWT 3
masta // thomas Toolbar wie in MacOS? AWT, Swing, JavaFX & SWT 13
M Toolbar Layout AWT, Swing, JavaFX & SWT 7
K Desktop toolbar Problem AWT, Swing, JavaFX & SWT 2
G Toolbar hat zuviel zwischenraum AWT, Swing, JavaFX & SWT 2
B Toolbar und Java-Versionen AWT, Swing, JavaFX & SWT 6
W ToolBar und StandardButtons AWT, Swing, JavaFX & SWT 9
S toolbar - flowlayout problem AWT, Swing, JavaFX & SWT 5
S Toolbar in einem BorderLayout verschieben AWT, Swing, JavaFX & SWT 4
G Toolbar mit Toolbuttons AWT, Swing, JavaFX & SWT 7
J Separator zwischen den einzelnen Symbolen in der Toolbar AWT, Swing, JavaFX & SWT 4
javasdann Icon in Toolbar ändern. AWT, Swing, JavaFX & SWT 4
javasdann MDI Problem mit Toolbar und Statusleiste. AWT, Swing, JavaFX & SWT 2
J Drop-down menü in Toolbar Button AWT, Swing, JavaFX & SWT 8
K toolbar dynamisch erzeugen AWT, Swing, JavaFX & SWT 2
A Bestes Layout für die Toolbar AWT, Swing, JavaFX & SWT 7
L Swing: Toolbar-Problem AWT, Swing, JavaFX & SWT 3
B Zugriff von Toolbar auf zugehörigen Frame AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen


Oben