Avatar billede dennism Nybegynder
03. december 2006 - 14:31 Der er 5 kommentarer og
1 løsning

Java: Vertical center

Jeg har dette lille test-program:

import javax.swing.*;
import java.awt.*;

class Main {
   
    public static void main(String[] args) {
        JFrame frame = new JFrame("Testing");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JPanel panel = new JPanel();
       
        JLabel headlineLabel = new JLabel("A headline");
        headlineLabel.setFont(new Font("Dialog",Font.BOLD,15));
        panel.add(headlineLabel);
       
        frame.add(panel, BorderLayout.CENTER);

        frame.setSize(800,500);
        frame.setLocation(200,200);
        frame.setVisible(true);
    }

}

Hvordan er det muligt at lave sådan at min label er placeret i midten af vinduet? Altså en form for vertical center.
Avatar billede mikkelbm Nybegynder
03. december 2006 - 21:55 #1
headlineLabel.setVerticalTextPosition(JLabel.CENTER);
headlineLabel.setHorizontalTextPosition(JLabel.CENTER);

Måske?
Avatar billede winners79 Nybegynder
04. december 2006 - 16:13 #2
import javax.swing.*;

import java.awt.*;

class Center {
 
    public static void main(String[] args) {
        JFrame frame = new JFrame("Testing");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JPanel panel = new JPanel();
     
        JLabel headlineLabel = new JLabel("A headline");
        headlineLabel.setFont(new Font("Dialog",Font.BOLD,15));
        panel.setLayout(new BorderLayout());
        panel.add(headlineLabel);

      //Den her:
        headlineLabel.setHorizontalAlignment(SwingConstants.CENTER);

        frame.add(panel);
        frame.setSize(800,500);
        frame.setLocation(200,200);
        frame.setVisible(true);
    }

}
Avatar billede dennism Nybegynder
04. december 2006 - 16:48 #3
Mikkelbm >>

Dit forslag virker ikke :(
Avatar billede dennism Nybegynder
04. december 2006 - 16:52 #4
Winners79 >>

Jeg har arbejdet videre med dit eksempel, i håb om at få et design hvor hver menu står på sin egen linie:

import javax.swing.*;
import java.awt.*;

class Center {

    public static void main(String[] args) {
        JFrame frame = new JFrame("Testing");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JPanel contentPanel = new JPanel(new FlowLayout());
       
        JLabel headlineLabel = new JLabel("A headline");
        headlineLabel.setFont(new Font("Dialog",Font.BOLD,15));
        headlineLabel.setHorizontalAlignment(SwingConstants.CENTER);
       
        JLabel textLabel = new JLabel("Number:");
       
        JFormattedTextField betIdText = new JFormattedTextField(12);
        betIdText.setPreferredSize(new Dimension(120,20));
       
        JButton button = new JButton("Next");   
       
        contentPanel.add(headlineLabel);
        contentPanel.add(textLabel);
        contentPanel.add(betIdText);
        contentPanel.add(button);

        frame.add(contentPanel, BorderLayout.CENTER);
        frame.setSize(800,500);
        frame.setLocation(200,200);
        frame.setVisible(true);
    }

}

Men får ikke rigtigt det ønskede resultat. har du en ide til, hvordan jeg kan klare det? Hvor komponent skulle gerne stå på sin egen linie.
Avatar billede winners79 Nybegynder
04. december 2006 - 18:18 #5
Hmm ja det bliver ikke sæligt flot med et Boxlayout
Avatar billede dennism Nybegynder
19. december 2006 - 14:07 #6
Jeg lukker her..

Måske nogen der kan hjælpe her:
http://www.eksperten.dk/spm/751599
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester