/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Gennemsigtige componenter i AWT
Fra : Soren Staun Jorgense~


Dato : 06-12-00 20:37

Hej,

Er der nogen der har prøvet at lave "gennemsigtige" components i AWT. Jeg
ved at det kan gøres i Swing, men hvordan kan det efterlignes i AWT. Og
hvordan er det i det hele taget konstrueret i Swing ??

Jeg har prøvet at tegne componentens parent på componenten og det virker
også efter hensigten, men problemet kommer når parent klassens andre
components skal tegnes.

Nogen gode hints ???

Søren Staun Jørgensen
---
ssj@get2net.dk




 
 
Kristoffer Sørensen (06-12-2000)
Kommentar
Fra : Kristoffer Sørensen


Dato : 06-12-00 22:53

hmm
duer det her ikke:

class MinKomponent extends Component
{
MinKomponent()
{
this.reshape(0,0,100,100);
}
public void paint(Graphics g)
{
g.setColor(Color.red);
g.fillRect(10,10,80,80);
}
}

... eller?

Mvh
Kristoffer


"Soren Staun Jorgensen" <ssj@get2net.dk> wrote in message
news:nwwX5.1420$7E2.156357@news101.telia.com...
> Hej,
>
> Er der nogen der har prøvet at lave "gennemsigtige" components i AWT. Jeg
> ved at det kan gøres i Swing, men hvordan kan det efterlignes i AWT. Og
> hvordan er det i det hele taget konstrueret i Swing ??
>
> Jeg har prøvet at tegne componentens parent på componenten og det virker
> også efter hensigten, men problemet kommer når parent klassens andre
> components skal tegnes.
>
> Nogen gode hints ???
>
> Søren Staun Jørgensen
> ---
> ssj@get2net.dk
>
>
>



Soren Staun Jorgense~ (06-12-2000)
Kommentar
Fra : Soren Staun Jorgense~


Dato : 06-12-00 23:35


Kristoffer Sørensen <kristoffer@cabocomm.dk> skrev i en
nyhedsmeddelelse:qyyX5.1463$7E2.170667@news101.telia.com...
> hmm
> duer det her ikke:
>

Hmmm.... jo, det duer helt sikkert, men er ikke svaret på mit spørgsmål -
eller måske er mit spørgsmål ikke ordenligt formuleret.

Jeg har en Container med et antal Components add'ed ovenpå. Hvad jeg gerne
vil opnå er at hver af disse Components er gennemsigtige, dvs. når at når
man flytter en af dem ( ved at dragge den med musen ) hen over en af de
andre, skal den underliggende Component stadig kunne ses under den man lige
har flyttet, foruden selvfølgelig også Containerens baggrund. Dette kan
gøres i Swing ved at sætte JComponent.setOpaque( false).

Mit spørgsmål var så hvordan dette kunne efterlignes under AWT.

Hvis du (mis)bruger Containerens paint metode i Componentens, og tager højde
for Componentens placering på Containeren, vil det se ud som om at
Componenten er gennemsigtig. Som følger:

/* Paint-metode i Component-klassen */
public void paint( Graphics g)
{
Point p = this.getLocation();

Container c = this.getParent();
if( c != null) {
g.translate( -p.x, -p.y);
c.paint( g); // Tegner parent
g.translate( p.x, p.y);
}

if( m_Image != null) {
g.drawImage( img, 0, 0, this); // Transperant gif
}
}

Problemet kommer når at ikke kun Containeren skal tegnes på Componenten, men
også de underliggende Componenter.

Søren Staun Jørgensen
---
ssj@get2net.dk




Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste