# JTextField ohne Rahmen



## Xclipse (4. Sep 2007)

Hallo Leute,

mit folgenden Zeilen zeichne ich einen Kreuz auf einem JPanel der in einem JInternalFrame liegt.

Wenn ich das Prog. starte ist alles OK aber sobald ich in irgendwohin klicke verschwinden
- bei allen JTextField`s - der obere und der linke Rahmen.  Es hat bei jedem JTextField einen ungewolten
schönen Schatteneffekt nach rechts-unten  , den ich aber (leider) nicht haben will.

Ich möchte, dass der Rahmen so bleibt, was ist die Lösung? :bahnhof: 



```
gridPanel_Center = new JPanel() {

                public void paintComponent(Graphics l) {
                    super.paintComponent(l);
                    Graphics2D ls = (Graphics2D)l;
                    ls.setStroke(new BasicStroke (2));
                    l.setColor(Color.black);
                    l.drawLine(35, 53, 955, 53);
                    l.drawLine(500, 40, 500, 300);
                }
            };
```


----------



## Xclipse (5. Sep 2007)

Hat den keiner eine Idee was es sein könnte. :bahnhof:


----------



## wayne (5. Sep 2007)

frage dazu: liegen deine JTextFields auf diesem JPanel? ist zwar ne blöde idee, aber wer weiß. überschreibe doch mal anstatt der paintComponent(...) die paint(...) und rufe darin dann natürlich super.paint(...) anstatt super.paintComponent(...) auf. ist einfach mal ins blaue getippt ... vielleicht klappts ja. ansonsten könnt ich auch nur raten, woran es liegen kann. du kannst ja mal von einigen deiner Components die paint(...) sowie die paintBorder(...) überschreiben und dir ein System.out.println(...) rein machen um festzustellen, ob denn beim klicken entsprechende methoden aufgerufen werden. ggf. könntest du die ja selbst anstoßen, wenn du dich als MouseListener auf die Components einträgst, die diesen effekt durch anklicken hervorrufen.

viel glück

wayne


----------



## Xclipse (5. Sep 2007)

Erst mal Danke sehr, das war die Lösung.

Aber was soll das denn jatzt ?
Muss ich es jetzt verstehen oder ...!!!??  ???:L 

In diesem >> Beitrag << hatte ich das Problem dass die Felder gänzlich weg waren
und erst nach dem Anklick wieder da waren (einzeln).
Habe dann den Tipp bekommen dass ich in JFrame die Methode .paintComponent(...)
und nicht .paint(...) benutzen muss.
Was auch richtig ist (da Swing) und es hat geholfen.

Und nun muss ich doch auf .paint(...) von AWT zurückgreifen. :autsch:
Und es geht so, wie es sein soll!!!!

Dass Swing den AWT "erweiter" ist klar aber das hier???

Woran liegt es denn??



> frage dazu: liegen deine JTextFields auf diesem JPanel? ist zwar ne blöde idee, aber wer weiß.



Ja es sind genau 31 Komponenten.  :roll: 
14 X JTextFields
17 X JLabels

Warum??  :bahnhof:

Gruß


----------

