내 Java 응용 프로그램에 특정 모양을 그리는 JPanel이 들어 있습니다. 이제 저는 이러한 모양에 일종의 툴팁을 붙이고 싶습니다. 자신의 도면에 대한 도구 설명
따라서 나는하면서 drawString을 사용하여 내 자신의 "도구 설명"을 만들려고, setBackground의, setColor를 방법 :public void drawToolTip(Graphics2D graphics, String text, Point2D position) {
graphics.setBackground(Color.RED);
graphics.setColor(Color.GREEN);
graphics.drawString(text, (float) position.getX(), (float) position.getY());
}
는 불행하게도 setBackground의 방법은 작동하지 않습니다. 텍스트 배경은 빨간색으로 설정되어 있지만 투명하게 유지됩니다. setColor 및 drawString이 제대로 작동합니다.
내 질문은 :
- 가 무엇 setBackground의 방법이 작동하지 않는 이유가 될 수 있을까?
- drawRect없이 경계선을 그릴 가능성이 있습니까?
- 텍스트 배경과 테두리를 그릴 때 substraw로 "drawRect"메서드를 사용하려면 어떻게해야합니까? 필기 텍스트에 자동으로 맞게 만들려면 어떻게해야합니까? 또는 다른 말로하면 특정 텍스트의 크기를 어떻게 얻을 수 있습니까?
감사합니다 마크는
그런데 Graphics2D 객체를 어떻게 얻고 있습니까? BufferedImage에서 가져 왔습니까? 구성 요소에서'getGraphics()'또는'createGraphics()'를 호출하고 있습니까? –
JPanel의 페인트 메서드에서 수행 할 작업은 다음과 같습니다. Graphics2D graphics2d = (Graphics2D) graphics; 및 drawToolTip 메서드를 호출하십시오. – Marc