On 03 Jul 2001 01:41:29 +0200, Jacob Bunk Nielsen <spam@bunk.cc>
wrote:
>Hej
>
>Jeg har ikke kodet så meget grafisk Java før, og nu har jeg så et
>problem. Jeg håber der er nogen der lige kan se lyset
>
>Kort fortalt, så har jeg en klasse der ser således ud:
>
>class PlotCanvas extends Canvas {
>
> public void paint(Graphics g) {
> // en masse indhold her ...
> }
>
> // nogle funktioner her.
>}
>
>Når jeg så opretter en instans af den klasse og add'er den til en
>java.awt.Frame går det fint og man kan kalde de funktioner der ligger
>i PlotCanvas-klassen, og den tegner så nogle ting som den skal.
>
>Nu vil jeg bare gerne lægge den ned i et JSplitPane, og så sker der
>lige pludselig ikke en brik når man prøver at få den til at tegne
>noget.
Det er ikke smart at blande standard awt komponenter sammen med Swing
komponenter.
Brug et JPanel istedet for Canvas, check dokumentationen for
paintComponent() (istedet for paint()), samt husk at brug
setTop/Left/Right/BottomComponent i JSplitPane, istedet for at add()
til det.
>Jeg har prøvet at lave en anden test, som ser således ud:
>
>public class PlotTest extends Frame implements ActionListener {
>
> // diverse indledning
>
> thePlotCanvas = new PlotCanvas();
>
> // virker, men kan ikke bruges
> // add(thePlotCanvas);
>
> // virker ikke
> plot = new Panel();
> plot.add(thePlotCanvas);
> add(plot);
>
> // noget mere, hvor den prøver at tegne og noget ActionListener...
>}
>
>Altså ser det ud til at det bare ikke virker når mit PlotCanvas-objekt
>bliver pakker ind i et Panel eller JSPlitPane. Hvad overser jeg?
Måske er størrelsen på dit canvas (0,0)?
>Hvis nogen skulle have lyst til at prøve, så ligger de nødvendige
>filer for at kunne compile PlotTest på <
http://www.bunk.cc/canvas/>.
For doven
vh. ld
--
"Time is the fire in which we burn"