JDialog für Anmeldedialog - mit Jigloo

  • Themenstarter Themenstarter sa.ho
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
S

sa.ho

Gast
Hallo zusammen,
ich möchte einen Anmeldedialog (Benutzername, Passwort) basteln.
Für das "einfache" Layout benutze ich den Jigloo von Cloudgarden (ist Vorgabe).
Soweit so gut. Den JDialog, von dem ich glaube, dass er sich dafür eignet, hab ich
als "nackte" Basis. Jetzt geht es leider schon los: Wie um himmelswillen kann ich denn
die Größe des JPasswordfields sowie den "Stand" im JDialog beeinflussen? Also mit dem
Jigloo bekomm ich es gar nicht hin. Der nimmt meine Größenangaben nicht an, sondern
passt das Passwortfenster immer exakt der Größe des Dialogs an. Der Code soweit:


Code:
import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JPasswordField;

/**
* This code was edited or generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder[.....]
*/
public class NewJDialog extends javax.swing.JDialog {


        private JPasswordField Passwort;

	/**
	* Auto-generated main method to display this JDialog
	*/
	public static void main(String[] args) {
		JFrame frame = new JFrame();
		NewJDialog inst = new NewJDialog(frame);
		inst.setVisible(true);
	}
	
	public NewJDialog(JFrame frame) {
		super(frame);
		initGUI();
	}
	
	private void initGUI() {
		try {
			{
				Passwort = new JPasswordField();
				getContentPane().add(Passwort, BorderLayout.CENTER);
				Passwort.setText("jPasswordField1");
				Passwort.setPreferredSize(new java.awt.Dimension(388, 63));
			}
			this.setSize(473, 240);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}
WO kann ich denn jetzt "Stand" und Größe ändern?? Wenn ich in den Klammern die Größe ändere,
hat es nicht den gewünschten Effekt :bahnhof:
HILFE und Danke im Voraus sagt:
s.ho
 
sorry..
nun hab ich durch "zufall" doch herausgefunden, wie ich mit dem jigloo
grafisch die größe bequem verändern kann. es lag an dem gewählten layout
des jdialogs. ich musste "AbsoluteLayout" auswählen.

aber es taucht sicher in den nächsten tagen noch die ein oder andere frage auf :?

danke, s.ho
 
Hallo zusammen,
da bin ich wieder - neues Problem: soweit - bisher ohne Funktionalität dahinter - der äußere Rahmen für meinen Anmeldedialog. Möchte nun gern eine Grafik / Icon ins Fenster einbinden: Einen Schlüssel oder sowas. Fragen:
Wo finde ich sowas und wie kann ich das einbauen? Und: Wie kann ich denn meinem Fenster einen Namen "Anmeldung" verpassen? Aus API etc. werde ich leider nicht allein schlau..
Bin für jeden Hinweis dankbar!
S.
Code:
public class NewJDialog extends javax.swing.JDialog {

	{
		//Set Look & Feel
		try {
			javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
		} catch(Exception e) {
			e.printStackTrace();
		}
	}

	private JPasswordField jPasswordField1;
	private JLabel jLabel2;
	private JButton jButton2;
	private JButton jButton1;
	private JLabel jLabel1;
	private JTextField Benutzername;

	/**
	* Auto-generated main method to display this JDialog
	*/
	public static void main(String[] args) {
		JFrame frame = new JFrame();
		NewJDialog inst = new NewJDialog(frame);
		inst.setVisible(true);
	}
	
	public NewJDialog(JFrame frame) {
		super(frame);
		initGUI();
	}
	
	private void initGUI() {
		try {
			{
				getContentPane().setLayout(null);
				this.setAlwaysOnTop(true);
				{
					jPasswordField1 = new JPasswordField();
					getContentPane().add(jPasswordField1);
					jPasswordField1.setBounds(168, 98, 140, 28);
					jPasswordField1.setToolTipText("Passwort eingeben");
				}
				{
					Benutzername = new JTextField();
					getContentPane().add(Benutzername);
					Benutzername.setBounds(168, 35, 140, 28);
					Benutzername.setToolTipText("Benutzername eingeben");
				}
				{
					jLabel1 = new JLabel();
					getContentPane().add(jLabel1);
					jLabel1.setText("Benutzername");
					jLabel1.setBounds(168, 7, 140, 28);
				}
				{
					jLabel2 = new JLabel();
					getContentPane().add(jLabel2);
					jLabel2.setText("Passwort");
					jLabel2.setBounds(169, 70, 133, 28);
				}
				{
					jButton1 = new JButton();
					getContentPane().add(jButton1);
					jButton1.setText("OK");
					jButton1.setBounds(140, 140, 63, 28);
				}
				{
					jButton2 = new JButton();
					getContentPane().add(jButton2);
					jButton2.setText("Abbrechen");
					jButton2.setBounds(252, 140, 112, 28);
				}
			}
			this.setSize(470, 209);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}
 
Hallo nochmal,
hm - keine Antwort bisher..ich habe jetzt was eingebunden, von dem ich dachte, es würde ein kleines icon oben im fenster erscheinen lassen. tut es aber nicht :-( es wäre wirklich schön, wenn da mal jemand drüber gucken könnte, was ich vergessen / falsch gemacht habe. bidde...

Code:
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Image;
import java.awt.Toolkit;

import javax.swing.BoxLayout;
import javax.swing.JButton;

import javax.swing.*;

public class NewJDialog extends javax.swing.JDialog {

	{
		//Set Look & Feel
		try {
			javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
		} catch(Exception e) {
			e.printStackTrace();
		}
	}

	private JPasswordField jPasswordField1;
	private JLabel jLabel2;
	private JButton jButton2;
	private JButton jButton1;
	private JLabel jLabel1;
	private JTextField Benutzername;

	/**
	* Auto-generated main method to display this JDialog
	*/
	public static void main(String[] args) {
		JFrame frame = new JFrame();
		NewJDialog inst = new NewJDialog(frame);
		inst.setVisible(true);
	}
	
	public NewJDialog(JFrame frame) {
		super(frame);
		initGUI();
	}
	
	private void initGUI() {
		
		String key = "My briefcase4.gif";
		Image image = Toolkit.getDefaultToolkit().getImage( key );
		  setIconImage  ( image );
		
		try {
			{
				getContentPane().setLayout(null);
				this.setAlwaysOnTop(true);
				{
					jPasswordField1 = new JPasswordField();
					getContentPane().add(jPasswordField1);
					jPasswordField1.setBounds(168, 98, 140, 28);
					jPasswordField1.setToolTipText("Passwort eingeben");
				}
				{
					Benutzername = new JTextField();
					getContentPane().add(Benutzername);
					Benutzername.setBounds(168, 35, 140, 28);
					Benutzername.setToolTipText("Benutzername eingeben");
				}
				{
					jLabel1 = new JLabel();
					getContentPane().add(jLabel1);
					jLabel1.setText("Benutzername");
					jLabel1.setBounds(168, 7, 140, 28);
				}
				{
					jLabel2 = new JLabel();
					getContentPane().add(jLabel2);
					jLabel2.setText("Passwort");
					jLabel2.setBounds(169, 70, 133, 28);
				}
				{
					jButton1 = new JButton();
					getContentPane().add(jButton1);
					jButton1.setText("OK");
					jButton1.setBounds(140, 140, 63, 28);
				}
				{
					jButton2 = new JButton();
					getContentPane().add(jButton2);
					jButton2.setText("Abbrechen");
					jButton2.setBounds(252, 140, 112, 28);
				}
			}
			this.setSize(470, 209);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private void setIconImage(Image image) {
		// TODO Auto-generated method stub
		
	}
}
:roll:
 
hello again,

kann mir denn wirklich niemand helfen? nur sagen, ob die setIconImage-Methode an richtiger Stelle
ist, ob sie so fuinktionieren kann um das ProgrammIcon zu setzen und WAS daran falsch ist - denn es
taucht im fenster nicht auf :-(
 
ok - da das thema scheinbar zu uninteressant ist oder ich nicht in der lage war, meine frage eindeutig zu schildern - sorry und dann kann ja der thread gern geschlossen oder als "beantwortet" markiert werden, damit er nicht als "müll" stört -
danke, s.ho
 
Hmm, komisch das dir niemand geantwortet hat ???:L
Nimm statt des Toolkits die ImageIO. Das Toolkit lädt Bilder asynchron, was dazu führt das das Bild nie da ist wenn man es braucht :wink:
 
Hallo,
und Danke..für die Antwort. Ich habe das Icon-Problem im Fenster gelöst:
Code:
bildLabel.setIcon(new ImageIcon(getClass().getClassLoader().getResource("images/Log off.gif")));
Allerdings kann ich im Dialogfenster selbst nicht das gewünschte Programmicon sehen.
In einem ähnlichen Programm funktioniert genau der "Befehl" - also kann ich's mir nur so erklären, dass
ich an falscher Stelle aufrufe oder so. Alles nötige importiert hab ich - bekomme auch keinerlei Fehlermeldung.
Hier der Teilcode:

Code:
public class LogFenster extends javax.swing.JDialog {
	
	private JTextField LogName;
	private JLabel PassLabel;
	private JButton okButton;
	private JLabel bildLabel;
	private JButton exButton;
	private JLabel NameLabel;
	private JPasswordField LogPassw;
[.....]
public static void main(String[] args) {
		JFrame frame = new JFrame();
		LogFenster inst = new LogFenster(frame);
		inst.setVisible(true);
	}
	
	public LogFenster(JFrame frame) {
		super(frame);
		frame.setIconImage(SwingResourceManager.getImage(LogFenster.class,
		"images/My briefcase1.gif"));  //Fenstericon??
		zeichneGUI();
	}
[.....]
Kann mir da nochmal jemand "unter die Arme greifen" bitte :wink:

S.
 
Du setzt das Icon auf den (Parent)Frame, da nützt es dir nichts.
Enfach:
Code:
setIconImage(SwingResourceManager.getImage(LogFenster.class,"images/My briefcase1.gif"));
 
Morgen,
hm - stimmt, aber wenn ich das frame. weglasse, dann kommt folgende Fehlermeldung:
The method setIconImage(Image) is undefined for the type of LogFenster
LogFenster ist ja ein JDialog ..
Code:
public class LogFenster extends javax.swing.JDialog {}
Liegt da das Problem? ???:L
...ratlose grüße
 
s.ho hat gesagt.:
Hallo,
und Danke..für die Antwort. Ich habe das Icon-Problem im Fenster gelöst:
Code:
bildLabel.setIcon(new ImageIcon(getClass().getClassLoader().getResource("images/Log off.gif")));
Allerdings kann ich im Dialogfenster selbst nicht das gewünschte Programmicon sehen.
In einem ähnlichen Programm funktioniert genau der "Befehl" - also kann ich's mir nur so erklären, dass
ich an falscher Stelle aufrufe oder so. Alles nötige importiert hab ich - bekomme auch keinerlei Fehlermeldung.
Hier der Teilcode:

Code:
public class LogFenster extends javax.swing.JDialog {
	
	private JTextField LogName;
	private JLabel PassLabel;
	private JButton okButton;
	private JLabel bildLabel;
	private JButton exButton;
	private JLabel NameLabel;
	private JPasswordField LogPassw;
[.....]
public static void main(String[] args) {
		JFrame frame = new JFrame();
		LogFenster inst = new LogFenster(frame);
		inst.setVisible(true);
	}
	
	public LogFenster(JFrame frame) {
		super(frame);
		frame.setIconImage(SwingResourceManager.getImage(LogFenster.class,
		"images/My briefcase1.gif"));  //Fenstericon??
		zeichneGUI();
	}
[.....]
Kann mir da nochmal jemand "unter die Arme greifen" bitte :wink:

S.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben