Draw text with graphics object on JFrame(在 JFrame 上用图形对象绘制文本)
问题描述
我是一名狂热的程序员,但今天是我的第一堂 Java 课.
I am an avid programmer but today is my first Java lesson.
public void Paint (Graphics g)
{
if(g instanceof Graphics2D)
{
Graphics2D g2d = (Graphics2D)g;
g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
}
g.drawString("This is gona be awesome", 200, 200);
}
使用上面的代码,我想在窗口上写一个句子,但它永远不会写.我做错了什么?
With the above code, I want to write a sentence on the window but it never writes. What am I doing wrong?
没关系 - 油漆必须是油漆.我深表歉意.
Never mind - Paint must be paint. I apologize profusely.
推荐答案
在给定的代码中,你想要的是
In the given code, what you want is
g2d.drawString("This is gona be awesome", 200, 200);
^
<小时>
一个工作示例供您参考:
A working example for your reference :
package Experiments;
import java.awt.Container;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.JComponent;
import javax.swing.JFrame;
public class MainClass{
public static void main(String[] args) {
JFrame jf = new JFrame("Demo");
Container cp = jf.getContentPane();
MyCanvas tl = new MyCanvas();
cp.add(tl);
jf.setSize(300, 200);
jf.setVisible(true);
}
}
class MyCanvas extends JComponent {
@Override
public void paintComponent(Graphics g) {
if(g instanceof Graphics2D)
{
Graphics2D g2 = (Graphics2D)g;
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2.drawString("This is gona be awesome",70,20);
}
}
}
这篇关于在 JFrame 上用图形对象绘制文本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 JFrame 上用图形对象绘制文本
基础教程推荐
- 如何对 HashSet 进行排序? 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01