jScrollbar erst nach klicken sichtbar Oo

Status
Nicht offen für weitere Antworten.
K

Kami

Gast
hi ihr proGramers!

folgendes problem :

bei meinem farbenspiel sind die scrollbars erst sichtbar, nachdem ich mit der maus drüber gehe oder draufklicke...das macht mich traurig. :cry:


hier mal der quelltext :

Code:
package informatikaufgabe;

import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.Random;

/**
 * 

Überschrift: </p>
 * 

Beschreibung: </p>
 * 

Copyright: Copyright (c) 2007</p>
 * 

Organisation: </p>
 * @author unbekannt
 * @version 1.0
 */

public class InformatikAufgabeFrame extends JFrame  {
  //deklarieren
  Color zufall,red,blue,green;
  int x,y,z;
  public int rot;
  public int gruen;
  public int blau;


  public void paint (Graphics g) {
    // Farbenkram
    Random generator = new Random();

    x = (int) (generator.nextInt(255));
    y = (int) (generator.nextInt(255));
    z = (int) (generator.nextInt(255));
    zufall = new Color(x, y, z);



    g.setColor(zufall);
    g.drawRect(300,200,400,400);
    g.fillRect(300,200,400,400);

    g.setColor(Color.white);
    g.drawOval(300,200,400,400);
    g.fillOval(300,200,400,400);


//repaint();

}

  JPanel contentPane;
  JScrollBar s1 = new JScrollBar();
  JScrollBar s2 = new JScrollBar();
  JScrollBar s3 = new JScrollBar();


  //Den Frame konstruieren
  public InformatikAufgabeFrame() {
    enableEvents(AWTEvent.WINDOW_EVENT_MASK);
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }

  //Initialisierung der Komponenten
  private void jbInit() throws Exception  {

    contentPane = (JPanel) this.getContentPane();
    contentPane.setLayout(null);
    this.getContentPane().setBackground(SystemColor.menuText);
    this.setDefaultCloseOperation(EXIT_ON_CLOSE);
    this.setSize(new Dimension(800, 600));
    this.setTitle("Farbenspiel");
    s1.setOrientation(JScrollBar.HORIZONTAL);
    s1.setPreferredSize(new Dimension(17, 48));
    s1.setBounds(new Rectangle(234, 18, 289, 21));
    // test scrollbar
     s1.setName("rot");
     s1.setMinimum(0);
     s1.setMaximum(265);


     s2.setName("grün");
  s2.setMinimum(0);
  s2.setMaximum(265);

  s3.setName("blau");
    s3.setMinimum(0);
    s3.setMaximum(265);


    s1.addAdjustmentListener(new InformatikAufgabeFrame_s1_adjustmentAdapter(this));
    s2.setOrientation(JScrollBar.HORIZONTAL);
    s2.setPreferredSize(new Dimension(17, 48));
    s2.setBounds(new Rectangle(233, 54, 291, 21));
    s2.addAdjustmentListener(new InformatikAufgabeFrame_s2_adjustmentAdapter(this));
    contentPane.setBackground(Color.black);
    contentPane.setEnabled(true);
    contentPane.setForeground(Color.black);
    contentPane.setDebugGraphicsOptions(0);
    contentPane.setDoubleBuffered(false);
    contentPane.setNextFocusableComponent(this);
    contentPane.setPreferredSize(new Dimension(1, 1));
    contentPane.setInputVerifier(null);
    contentPane.setVerifyInputWhenFocusTarget(true);
    s3.setOrientation(JScrollBar.HORIZONTAL);
    s3.setBounds(new Rectangle(238, 93, 286, 22));
    s3.addAdjustmentListener(new InformatikAufgabeFrame_s3_adjustmentAdapter(this));
    contentPane.add(s1, null);
    contentPane.add(s2, null);
    contentPane.add(s3, null);
  }

  //Überschrieben, so dass eine Beendigung beim Schließen des Fensters möglich ist
  protected void processWindowEvent(WindowEvent e) {
    super.processWindowEvent(e);
    if (e.getID() == WindowEvent.WINDOW_CLOSING) {
      System.exit(0);
    }
  }






  void s1_adjustmentValueChanged(AdjustmentEvent e) {
     Graphics g = getGraphics();
Object s = e.getSource();
if(s==s1 || s==s2 || s==s3){
      rot = s1.getValue(); // Farbfeld wird umgefärbt
      gruen = s2.getValue();
      blau = s3.getValue();
      g.setColor(new Color(rot, gruen, blau));
     g.drawOval(300,200,400,400);
     g.fillOval(300,200,400,400);



    }


  }

  void s2_adjustmentValueChanged(AdjustmentEvent e) {
    Graphics g = getGraphics();
Object s = e.getSource();
if(s==s1 || s==s2 || s==s3){
     rot = s1.getValue(); // Farbfeld wird umgefärbt
     gruen = s2.getValue();
     blau = s3.getValue();
     g.setColor(new Color(rot, gruen, blau));
    g.drawOval(300,200,400,400);
    g.fillOval(300,200,400,400);



   }

  }

  void s3_adjustmentValueChanged(AdjustmentEvent e) {
    Graphics g = getGraphics();
Object s = e.getSource();
if(s==s1 || s==s2 || s==s3){
     rot = s1.getValue(); // Farbfeld wird umgefärbt
     gruen = s2.getValue();
     blau = s3.getValue();
     g.setColor(new Color(rot, gruen, blau));
    g.drawOval(300,200,400,400);
    g.fillOval(300,200,400,400);



   }

  }






}

class InformatikAufgabeFrame_s1_adjustmentAdapter implements java.awt.event.AdjustmentListener {
  InformatikAufgabeFrame adaptee;

  InformatikAufgabeFrame_s1_adjustmentAdapter(InformatikAufgabeFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void adjustmentValueChanged(AdjustmentEvent e) {
    adaptee.s1_adjustmentValueChanged(e);
  }
}

//Object s = e.getSource();
//if(s==s1 || s==s2 || s==s3){
    //rot = s1.getValue();             // Farbfeld wird umgefärbt
   // gruen = s2.getValue();
    //blau = s3.getValue();
   // farbfeld.setBackground(new Color(rot, gruen, blau));

class InformatikAufgabeFrame_s2_adjustmentAdapter implements java.awt.event.AdjustmentListener {
  InformatikAufgabeFrame adaptee;

  InformatikAufgabeFrame_s2_adjustmentAdapter(InformatikAufgabeFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void adjustmentValueChanged(AdjustmentEvent e) {
    adaptee.s2_adjustmentValueChanged(e);
  }
}

class InformatikAufgabeFrame_s3_adjustmentAdapter implements java.awt.event.AdjustmentListener {
  InformatikAufgabeFrame adaptee;

  InformatikAufgabeFrame_s3_adjustmentAdapter(InformatikAufgabeFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void adjustmentValueChanged(AdjustmentEvent e) {
    adaptee.s3_adjustmentValueChanged(e);
  }
}

danke im vorraus!
 

André Uhres

Top Contributor
Du hast den super-Aufruf vergessen :wink: :
Code:
   public void paint(Graphics g) {
        super.paint(g);
...
Meist überschreibt man aber nicht "paint" im JFrame, sondern die "paintComponent" einer neuen Klasse,
die JPanel oder JComponent erweitert (dort auch den super-Aufruf nicht vergessen!).
Dann fügt man einfach ein Objekt dieser neuen Klasse dem JFrame hinzu.
 
K

Kami

Gast
Halleluja :D

weißt du was, ich glaub ich liebe dich :wink:

vielen dank!!!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
StrikeTom JScrollBar horizontal Java Basics - Anfänger-Themen 5
O JScrollPane , JScrollBar Java Basics - Anfänger-Themen 3
hdi Grösse & Position von JScrollBar Java Basics - Anfänger-Themen 28
J JScrollBar JScrollPane Java Basics - Anfänger-Themen 9
M JScrollBar Java Basics - Anfänger-Themen 3
G JScrollBar Java Basics - Anfänger-Themen 5
A JPanel(mit JScrollBar) größe ändern Java Basics - Anfänger-Themen 9
Franky868 JList in einer JScrollbar + letztes Element sichtbar Java Basics - Anfänger-Themen 2
R Größe der JScrollBar Java Basics - Anfänger-Themen 3
R JScrollBar Java Basics - Anfänger-Themen 10
I Java Mail Timeout erst nach rund 5 Minuten? Java Basics - Anfänger-Themen 9
FireHorses Einen Command erst nach einer Chateingabe aktivieren Java Basics - Anfänger-Themen 1
berserkerdq2 Findet eine parallele Verarbeitung in Java bei Threads erst statt, wenn man die Methoden auch synchronized? Und wie sieht bei Conditions aus? Java Basics - Anfänger-Themen 8
F Initialisieren eines Web-Mp3 Players in Tabs durch "booleans" erst wenn Tab geöffnet wird ...? Java Basics - Anfänger-Themen 1
M Java GUI label ändert sich erst zum Schluss Java Basics - Anfänger-Themen 4
J Input/Output Den zweiten Output erst nach Eingabe ausgeben Java Basics - Anfänger-Themen 4
S OOP Button erst nach 2x klicken deaktivieren Java Basics - Anfänger-Themen 4
P Weiter erst bei Drücken de Enter-TAste Java Basics - Anfänger-Themen 1
W Es wird erst gezeichnet, wenn ich das Fenster vergrößere? Java Basics - Anfänger-Themen 20
B FileWatcher : Erst Rückmeldung wenn komplett kopiert? Java Basics - Anfänger-Themen 3
I Zähler, der erst wieder zählt nachdem Pixel wieder andere Farbe hat Java Basics - Anfänger-Themen 2
Clarence Weinberg Eclipse: Package wird erst nach Neustart aktuallisiert Java Basics - Anfänger-Themen 1
A Dialog schließt erst nach 2x Klicken auf Schließen Java Basics - Anfänger-Themen 2
T Erste Schritte Elemente finden, deren Name erst "zusammengesetzt" wird Java Basics - Anfänger-Themen 8
R Text Pane Aktualisierung erst nach JOptionPane Java Basics - Anfänger-Themen 10
M globales Array erst mittem im Programm erstellen Java Basics - Anfänger-Themen 14
R Variablen Datentyp erst während Laufzeit festlegen Java Basics - Anfänger-Themen 6
B Erst lesen: Automatisch Texteingabe bestätigen Java Basics - Anfänger-Themen 6
S Inhalt von JPanel erst nach Resize sichtbar Java Basics - Anfänger-Themen 2
S JButton erscheint erst bei Mouseover Java Basics - Anfänger-Themen 10
M Tabelle aktualisiert sich erst nach mausklick Java Basics - Anfänger-Themen 4
E Methode erst nach 20 Sekunden ausführen? Java Basics - Anfänger-Themen 4
A JLabel erst auf null dann auf einen Wert setzen Java Basics - Anfänger-Themen 7
I Befehl wird erst nach dem Ausführen einer Funktion ausgeführt Java Basics - Anfänger-Themen 4
I Funktion erst starten nachdem eine komplett fertig ist Java Basics - Anfänger-Themen 4
M Buttons erscheinen erst bei Mouse-Over Java Basics - Anfänger-Themen 8
C Prozess wird erst bei Beendigung des Programms ausgeführt Java Basics - Anfänger-Themen 2
V JFrame erst sichtbar machen wenns geladen ist Java Basics - Anfänger-Themen 8
Weiti Anzeige von komponenten erst bei Mouse-Over Java Basics - Anfänger-Themen 3
G Objekte von Klassen die erst zur Laufzeit bekannt sind erstellen Java Basics - Anfänger-Themen 6
B Hilfe: Tastatureingaben werden erst nach der Maus angenommen Java Basics - Anfänger-Themen 3
S Teil derGUI zeigt sich erst später Java Basics - Anfänger-Themen 2
C was mach ich erst wenn die programme richtig schwer werden? Java Basics - Anfänger-Themen 2
V Buffered Reader, erst ab bestimmter Zeile auslesen? Java Basics - Anfänger-Themen 8
A JButton erscheint erst bei mouse over Java Basics - Anfänger-Themen 3
A components im JFrame erst nach Größenänderung sichtbar? Java Basics - Anfänger-Themen 2
P Eclipse "aufraeumen", iText-Lizenz, Exe-Datei erst Java Basics - Anfänger-Themen 7
P Menüeinträge erst "über Umwege" sichtbar? Java Basics - Anfänger-Themen 2
K ResultSet öffnet sich garnicht erst Java Basics - Anfänger-Themen 9
P Lauflicht erst durch Mausklick starten Java Basics - Anfänger-Themen 26
J Habe gerade erst mit Java begonnen - Frage zu JTabbedPane Java Basics - Anfänger-Themen 3
S welcher Konstructor zu erst bei Vererbung Java Basics - Anfänger-Themen 3
C Erst weiter machen wenn fertig Java Basics - Anfänger-Themen 3
I Erst repaint() dann zeichnen? Java Basics - Anfänger-Themen 6
Q Code erst weiterführen, wenn ChildFrame geschlossen wurde Java Basics - Anfänger-Themen 10
DEvent anfängerfrage: wieso layout erst beim verändern? Java Basics - Anfänger-Themen 6
M HelloWorld.txt nach HelloWorld.java in Win11 funktioniert nicht Java Basics - Anfänger-Themen 4
J Zwischenablage ist nach Programm beenden leer Java Basics - Anfänger-Themen 9
hubmar Fehler beim mp4-datei aufrufen, nach dem zweiten aufruf Java Basics - Anfänger-Themen 1
M Variablen Werte nach setzen, bei Abfrage wieder alter Wert Java Basics - Anfänger-Themen 11
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
M Queue-Datenstruktur: nach dem Elementen entfernen, das Ergebnis ist immer noch nicht optimal. Java Basics - Anfänger-Themen 3
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
H Liste nach String-Länge sortieren Java Basics - Anfänger-Themen 1
I Bild richtig speichern / Hochkant im File Explorer, nach Upload vertikal Java Basics - Anfänger-Themen 9
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
C Probleme mit Byte konvertieren nach int Java Basics - Anfänger-Themen 10
T sortierung der eingabe nach größe Java Basics - Anfänger-Themen 5
G Bei dynamischer Arrayliste nach jeder Auswahl Zahl entfernen Java Basics - Anfänger-Themen 3
ptcho Werte/Position nach dem Funktionsaufruf tauschen? Java Basics - Anfänger-Themen 1
K Warum wird mir hier nach dem ersten Durchlauf zwei mal "welchen Datentyp wollen sie übergeben?" ausgegeben ? Java Basics - Anfänger-Themen 1
H Cast von Float nach String klappt nicht Java Basics - Anfänger-Themen 12
W LocalDate toString und nach Split falsch "erkannt"? Java Basics - Anfänger-Themen 8
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
S Größte Zahl nach Eingabe der Zahl 0 ausgeben Java Basics - Anfänger-Themen 6
izoards Sortier Algorithmus für Bounding Box Elememte Links nach Rechts und von Oben nach Unten Java Basics - Anfänger-Themen 33
Jambolo Karten sortieren nach Rang und Farbe Java Basics - Anfänger-Themen 5
Lion.King Subtraktion nach Eingabe im Terminal Java Basics - Anfänger-Themen 7
D Programmieren nach UML Java Basics - Anfänger-Themen 2
rosima26 Java nach letzter Ziffer sortieren Java Basics - Anfänger-Themen 19
H Kompliziertes Sortieren einer ArrayList mit Objekten(Sortieren nach X und Y) Java Basics - Anfänger-Themen 11
H Erste Schritte Nach einer Zahl n soll n Mal der String untereinander ausgegeben werden Java Basics - Anfänger-Themen 3
volcanos List & ArrayList nach Familiennamen abfragen Java Basics - Anfänger-Themen 57
sserio Wie kann man nach einer Klasse fragen? Java Basics - Anfänger-Themen 12
S Java Client-je nach Heap Size Größe startet Applikation oder nicht Java Basics - Anfänger-Themen 4
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
F Suche nach betreuender Person für eine Jahresarbeit der 12. Klasse. Java Basics - Anfänger-Themen 6
F nach Methode Programm nicht beenden Java Basics - Anfänger-Themen 9
E Umlaute und Sonderzeichen werden nach der Build Project nicht richtig angezeigt Java Basics - Anfänger-Themen 2
M Bei nach oben scrollen soll Seite aktualisiert werden (Userscript mit Javascript) Java Basics - Anfänger-Themen 10
K log4j nach log4j2 überführen Java Basics - Anfänger-Themen 0
javapingu Jeglichen Inhalt einer Textdatei nach Zeile n löschen Java Basics - Anfänger-Themen 8
J Nach dem Exportieren funktioniert mein Programm nicht mehr Java Basics - Anfänger-Themen 8
P Datei einlesen, nach Begriff filtern und in Datei ausgeben. Problem Standardausgabe über Konsole Java Basics - Anfänger-Themen 19
B Array nach Wert prüfen rekursiv Java Basics - Anfänger-Themen 5
CptK For-Schleife in Thread nach jedem Durchlauf pausieren Java Basics - Anfänger-Themen 35
D Primzahlen Rechner nach Eratostenes von Kyrene Algorithmus Java Basics - Anfänger-Themen 2
rafi072001 Sortieren einer HashMap nach Values Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben