2014-05-21 35 views
7

Image of the glitch
enter image description hereusterka grafiki Java Swing?

uczę Java odtwarzając przykładów z podręcznika i jak tylko mam do korzystania z klas GUI przeżyłem dziwne usterki, jeśli jest to właściwe określenie. Jak widać na obrazie, brakuje części tekstu.

Kod generowania tego okna nie jest skomplikowane albo:

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

public class InnerClassTest { 
    public static void main(String[] args) { 
     TalkingClock clock = new TalkingClock(1000, true); 
     clock.start(); 

     // keep program running until user selects "OK" 
     JOptionPane.showMessageDialog(null, "Quit program?"); 
     System.exit(0); 
    } 
} 

class TalkingClock { 
    /* 
    * COnstructs a talking clock 
    * @param interval the interval between messages (in milliseconds) 
    * @param beep true if the clock should beep 
    */ 
    public TalkingClock(int interval, boolean beep) { 
     this.interval = interval; 
     this.beep = beep; 
    } 

    /* 
    * Start the clock. 
    */ 
    public void start() { 
     ActionListener listener = new TimePrinter(); 
     Timer t = new Timer(interval, listener); 
     t.start(); 
    } 

    private int interval; 
    private boolean beep; 

    class TimePrinter implements ActionListener { 
     @Override public void actionPerformed(ActionEvent event) { 
      Date now = new Date(); 
      System.out.println("At the tone, the time is " + now); 
      if (beep) Toolkit.getDefaultToolkit().beep(); 
     } 
    } 
} 

uzyskać similair usterki podczas otwierania „Panel sterowania” Java. Spójrz na ikonę Java na this image. (Fragment tekstu brakuje również tutaj. Bieżący tytuł zakładka powinna być „Uppdatera”)
enter image description here

Ja nie występuje ten problem w dowolnej innej aplikacji i używam wersji up-to-date z platforma Java najnowsze dostępne sterowniki do mojej karty Nvidia GeForce GT 630M.

Czy masz jakieś sugestie dotyczące rzeczy, które mogę spróbować rozwiązać?

+0

Uruchom swój kod UI w kontekście wątku związanego z wysyłką zdarzeń, zobacz [początkowe wątki] (http://docs.oracle.com/javase/tutorial/uiswing/concurrency/initial.html), aby uzyskać więcej szczegółów. – MadProgrammer

+0

aby zapamiętać problem z kartami graficznymi, .... ale nie pamiętam szczegółów. –

+0

Może to odzwierciedlać niedopasowanie między lokalizacjami wybranymi podczas instalacji w systemie Windows i Java. – trashgod

Odpowiedz

1

Długo miałem ten sam problem co ty i w końcu dowiedziałem się, jak to naprawić.

Jak napisali inni, był to problem z moim sterownikiem karty graficznej (mam NVIDIA GeForce GT 640M). Myślałem, że to nie było na początku, ponieważ miałem najnowszy sterownik, więc próbowałem ponownie zainstalować Javę bez powodzenia. Ostatecznie wycofałem swój sterownik graficzny (Panel sterowania -> Menedżer urządzeń -> Karty graficzne -> (nazwa twojej karty graficznej) -> Sterownik (karta) -> Przywróć sterownik (przycisk)) i to rozwiązało problem. Próbowałem aktualizacji do nowszej wersji i problem wrócił, więc jest zdecydowanie nowszy sterownik, który był przyczyną problemu.

1

Wyłącz Anti Aliasing lub FXAA na karcie graficznej;)

2

ja wpadłem na ten problem, ale naprawiłem to! Ja tylko po spojrzeniu na tej stronie, poszedłem i postanowił sprawdzić ustawienia mojej karty graficznej, a ja sobie z tego sprawę -

https://www.youtube.com/watch?v=UWu3dyXlbAM

Sprawdź, za to, co zrobiłem. Wszystko, co zrobiłem, to przejść do "Zarządzaj ustawieniami 3D" i kliknąłem "Znajdź" i dodałem "Java 1.8.0_25 ...." i ustawiłem na korzystanie z procesora wysokiej wydajności nVidia. Domyślam się, że nowa Java potrzebuje tylko zachęty do korzystania z dobrej grafiki: D.

+0

dziękuję, to jest rzeczywiście pomocne. Przez cały ten czas myślałem, że mam problem z kartą NVidial Graphics, ale rzeczywisty problem dotyczył karty Intel Integrated Graphics. Ustawiłem preferowany procesor graficzny na "High-perf NVIDIA processor" (w Panelu sterowania NVidia -> Zarządzaj ustawieniami 3d, Ustawienia programu -> Dodaj -> Java) i Java UI działa teraz poprawnie. –