|
| Dialog box Fra : Christian Kristoffer~ |
Dato : 11-09-02 00:18 |
|
Hej Alle
Hvordan kan man centrere en dialog box midt i den ramme hvor den kaldes fra
?
Normalt synes jeg bare den placere sig midt i skærmen, og ikke midt på
Framen som den blev kaldt fra.
/Christian
| |
Trygleren (11-09-2002)
| Kommentar Fra : Trygleren |
Dato : 11-09-02 07:53 |
|
> Hvordan kan man centrere en dialog box midt i den ramme hvor den kaldes
fra
> ?
setSize(800,600);
Dimension dim = getToolkit().getScreenSize();
setLocation(dim.width/2-getWidth()/2,dim.height/2-getHeight()/2);
//Placerer din frame i midten af parentframet.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
"Sic gorgiamus allos subjectatos nunc"
Lars Winther
| |
Lars Dam (11-09-2002)
| Kommentar Fra : Lars Dam |
Dato : 11-09-02 08:11 |
|
On Wed, 11 Sep 2002 08:53:23 +0200, "Trygleren"
<tryglerenSLETDETHER@tdcadsl.dk> wrote:
>> Hvordan kan man centrere en dialog box midt i den ramme hvor den kaldes
>fra
>> ?
>
> setSize(800,600);
> Dimension dim = getToolkit().getScreenSize();
> setLocation(dim.width/2-getWidth()/2,dim.height/2-getHeight()/2);
>//Placerer din frame i midten af parentframet.
Nej - den placerer dialogen midt på skærmen, ikke midt på en frame
(medmindre denne også er placeret i midten)
Dimension dim = parent.getSize();
setLocation(parent.getLocation().x+(dim.width/2-getWidth()/2),parent.getLocation().y+(dim.height/2-getHeight()/2));
Skulle gøre det
>
>~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>"Sic gorgiamus allos subjectatos nunc"
>Lars Winther
>
vh. ld
| |
Lars Dam (11-09-2002)
| Kommentar Fra : Lars Dam |
Dato : 11-09-02 08:07 |
|
On Wed, 11 Sep 2002 01:17:38 +0200, "Christian Kristoffersen"
<dsl32328@_**NOSPAM**_vip.cybercity.dk> wrote:
>Hej Alle
>
>Hvordan kan man centrere en dialog box midt i den ramme hvor den kaldes fra
>?
>
>Normalt synes jeg bare den placere sig midt i skærmen, og ikke midt på
>Framen som den blev kaldt fra.
Det er bare lidt simpelt matematik der skal til... Du kender din
frame's position og størrelse, og din dialogs størrelse. Så kan du
nemt beregne hvor du skal placere din dialog.
Hvis du gør det smart, så finder du din dialogs parent (framen), og
hvis den er null, så brug din skærms opløsning som udgangs punkt.
Dette kan du evt. gøre i setVisible metoden:
public void setVisible( boolean visible ){
if( visible && !isVisible() ){
beregning...
}
super.setVisible();
}
>/Christian
>
vh. ld
| |
Jan Jonasen (11-09-2002)
| Kommentar Fra : Jan Jonasen |
Dato : 11-09-02 14:42 |
|
In article <allugg$pat$1@news.cybercity.dk>, Christian Kristoffersen
(dsl32328@_**NOSPAM**_vip.cybercity.dk) wrote:
> Hvordan kan man centrere en dialog box midt i den ramme hvor den kaldes fra
> ?
>
Swing eller awt? JDialog har f.eks. en constructor som også tager en
parent, hvilket medføre at dialogen placeres relativt (midt på) i forhold
til denne. Ellers har jdk 1.4 på java.awt.Window en setLocationRelativeTo
(Component c), jeg vil dog sværge på, at jeg har brugt den selvsamme metode
på en JFrame i 1.3.1.
--
Mvh/re Jan Jonasen
jonasen (at) it (dot) dk
If I wanted culture, I'd eat yogurt.
| |
|
|