JScrollPane durchsichtig machen bis auf den Scrollbalken?

2 Antworten

Meines Wissens geht dies über Swing-Componenten nicht, hierzu müsstest du alte AWT-Componenten verwenden und die Scrollbars manuell zeichnen.

Ich habe schon länger nicht mehr mit reinen Java-Komponenten befasst, weil ich damit schon länger nicht mehr viel mache, aber damals stand ich auch vor dem Problem, als ich mit Transparenz der einzelnen Komponenten benötigt hatte.

Woher ich das weiß:
eigene Erfahrung

Viewport, Panel und ScrollPane müssen als undurchsichtig gesetzt werden.

Ich gebe dir ein kurzes Beispiel:

import java.awt.*;
import javax.swing.*;

class SomeViewport extends JViewport {
  public SomeViewport() {
    setOpaque(false); // set viewport opaque
    setPreferredSize(new Dimension(400, 400));
  }

  // only for example / presentation: viewport shows a blue rectangle
  @Override
  public void paint(Graphics graphics) {
    super.paint(graphics);
    graphics.setColor(Color.blue);
    graphics.fillRect(50, 50, 150, 150);
  }
}

public class TransparentScrollPaneExample extends JFrame {
  public TransparentScrollPaneExample() {
    getContentPane().setBackground(Color.cyan); // frame background color

    JViewport viewport = new SomeViewport();
    JPanel panel = new JPanel();
    panel.setOpaque(false); // set panel opaque
    panel.setPreferredSize(new Dimension(500, 500));
    viewport.setView(panel);

    JScrollPane scrollPane = new JScrollPane();
    scrollPane.setViewport(viewport);
    scrollPane.setOpaque(false); // set scrollpane opaque

    add(scrollPane);

    setDefaultCloseOperation(DISPOSE_ON_CLOSE);
    pack();
    setLocationRelativeTo(null);
    setVisible(true);
  }

  public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable() {
      @Override
      public void run() {
        new TransparentScrollPaneExample();
      }
    });
  }
}

Nagelweiß sehr "durchsichtig"?

Ich habe das Problem, dass wenn ich, wie jetzt an meinem Handy schreibe und keinen Nägel Lack drauf habe, das Licht meines Handy durch mein nagelweiß scheint, wenn ihr wisst, was ich meine. Also dieses, was man für french anmalt... Mein Nagel Splittert Vorne auch... Also, das sich die Schichten ablösen. Sonst sind sie ganz fest aber sollte das Nägel Weiß nicht trüber sein?

Siehe Foto Das Bild "Nägel mit Hintergrund Belichtung" ist sehr stark sichtbar, was mein Problem ist. Natürlich hat die Kamera es anders eingegangen aber so in etwa sieht das aus.

Mit freundlichen Grüßen Persafonie

...zur Frage

Wer kann mir diese for Schleife in Java Erklären (Fibonacci Zahlen Berechnung)? Siehe Foto?

ich verstehe es nicht. ( Also der Code ist von meinem Lehrer wir haben das Kaninchen Beispiel der Fibonacci Zahlen berechnet). Abe

Aber ich find es ergibt keinen Sinn die for Schleife hat doch nichts mit alt und neu variablen zu tun, da steht ja nämlich i=1 also es wurde eine neue Variable definiert aber was hat das i denn bitte schön mit der neu und alt Berechnung zu tun man hätte die for schleife doch gleich komplett weglassen können da wird nichts erhöht bei der Berechnung oder sonst was Haare ich Checks net.

Mit freundlichen Grüßen

...zur Frage

Wo steht mein IPhone- Einschränkungs Code?

Hey, ich muss mein IPhone 6 zurücksetzen und wenn ich auf zurücksetzen gehe brauche ich meinen IPhone  Zurücksetzungs Code
Woher bekomme ich den?

Mit freundlichen Grüßen

Joost

...zur Frage

Fortnite 2 Faktor Code vergessen. Was nun?

Wenn ich mich anmelde, kommt dann: Ich brauche den 2 factor code. Die E-Mail wo der Code ist habe ich dummerweise gelöscht. Was soll ich tun. Bitte um schnellstmögliche Antwort.
Mit freundlichen Grüßen
ZeusMarcel

...zur Frage

Hallo, Wir haben einen John Deere 6930. Wie bekommt man den Auspuff lauter? Mit freundlichen Grüßen?

...zur Frage

Wie teste ich meine boolean Klasse in Java? Siehe Foto + Code ist im Link?

also das ist die aufgabe ich hab sie so gut ich konnte gelöst nur meine frage ist ich weiß nicht ob sie klappt keine Ahnung wie ich da jetzt nenn String teste würde gerne "hi" und "hi" testen muss man da eine main Methode erstellen falls ja wie leg ich dann Strings rein? Siehe Foto

https://pastebin.com/0QC4SXdp

Mit freundlichen Grüßen

...zur Frage

Was möchtest Du wissen?