java drawstring 中文_java中Graphics类drawString()方法问题
展开全部
你这样的做法很多地方32313133353236313431303231363533e59b9ee7ad9431333332623961都不正确的!比如如果你用的是流布局而你也没有给你的MyButton的父类传文本得话!那么他的自定义按钮大写是默认为没有文本的大小!就是很小的啦!(不知道你明白没) 给你给个例子import java.awt.Color;
import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.Serializable;
import javax.swing.*;
import jxl.format.Border;
public class NButton {
public static void main(String[] args) {
JFrame jf = new JFrame("按钮");
Mybutton mybutton = new Mybutton("button");
mybutton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("奶萨倒萨爱上");
}
});
jf.add(mybutton);
jf.setLayout(new FlowLayout());
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setSize(200, 200);
jf.setLocationRelativeTo(null);
}
}
class Mybutton extends JButton{
private static final long serialVersionUID = 1L;
private String str = new String();
public Mybutton() {
super();
// TODO Auto-generated constructor stub
}
public Mybutton(String text) {
super(text);
Dimension dimension = this.getPreferredSize();
dimension.width=dimension.height=Math.max(dimension.width, dimension.height);
this.setPreferredSize(dimension);
this.setBorderPainted(false);
this.setContentAreaFilled(false);
str = text;
}
@Override
protected void paintBorder(Graphics g){
g.setColor(this.getForeground());
g.drawOval(0,15,getSize().width - 1,getSize().height - 30);
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponents(g);
if(this.getModel().isArmed()){
g.setColor(Color.BLUE);
}else{
g.setColor(Color.WHITE);
}
g.fillOval(0, 15, this.getWidth(), this.getHeight()-30);
g.setColor(Color.BLACK);
g.drawString(str, 20, 40);
}
}
java drawstring 中文_java中Graphics类drawString()方法问题相关推荐
- java域的控制修饰符可分为_Java中的类和方法的修饰符
java 中的类和方法的修饰符Java程序在定义类时,除了使用class关键字标识之外,还可以在class之前增加若干类的修饰符来修饰限定所定义的类的特性.类的修饰符分为访问控制符和非访问控制符两大类 ...
- java properties 参数_Java中Properties 类的详细使用
我把你的头像,设置成我的名字,此刻你便与我同在. 我把你的名字,写进我的代码里面,以后,我的世界便存在着你. 一.Properties 类 Properties 类位于 java.util.Prope ...
- java file构造方法_Java中FileOutputStream类的常用方法
今天动力节点java学院小编将为大家分享Java中FileOutputStream类的常用方法,希望通过此文能够帮助到大家,下面就随小编一起看看Java中FileOutputStream类的常用方法都 ...
- java printwriter用法_Java中printwriter类的用法 | 学步园
printwriter类: java.io 类 PrintWriter java.lang.Object java.io.Writer java.io.PrintWriter 所有已实现的接口: Cl ...
- java 异常 中文_Java中所有的运行时异常,带中文解释
展开全部 算术异常类:ArithmeticExecption 空指针异常类:NullPointerException 类型强制转换异常:ClassCastException 数组负下标异常:Negat ...
- java如何重写_java中如何重写一个方法
方法的重写: 1.在子类中可以根据需要对从基类中继承来的方法进行重写. 2.重写的方法和被重写的方法必须具有相同方法名称.参数列表和返回类型. 3.重写方法不能使用比被重写的方法更严格的访问权限. 在 ...
- java同步关键字_Java中synchronized关键字修饰方法同步的用法详解
Java的最基本的同步方式,即使用synchronized关键字来控制一个方法的并发访问. 每一个用synchronized关键字声明的方法都是临界区.在Java中,同一个对象的临界区,在同一时间只有 ...
- java.equal例子_Java中的== 和equals()方法详解与实例
Java中的== 和equals()方法: Java中的数据类型,可分为两类: 1.基本数据类型,也称原始数据类型. byte,short,char,int,long,float,double,boo ...
- java wait 参数_java中wait()和join()方法的区别是什么
java中wait()和join()方法的区别是:存在不同的java包中:wait()方法用于线程间通信,它所施加的等待状态的线程可以被启动:join()方法用于在多个线程之间添加排序,它所施加的等待 ...
最新文章
- 当您访问未加密的HTTP网站时,谁能看到您的数据?—Vecloud微云
- 深度学习核心技术精讲100篇(三十八)-滴滴司机调度系统实践
- numpy.eye详解
- 算法竞赛入门与进阶 (一)枚举
- 前端学习(1925)vue之电商管理系统电商系统之美化一层循环的UI结构
- JavaScript创建Element元素/标签的工具/方法
- .net面试题(会持续更新)
- 微软公开PrintNightmare系列第3枚无补丁0day,谷歌修复第8枚已遭利用0day
- 纯CSS一分钟让网站拥有暗黑模式切换功能
- mysql data::dumper_初始化mysql数据库提示缺少Data:dumper模块解决方法
- python cpu温度_使用Python(和其他一些不错的技巧)检查CPU的温度
- 微信小程序最新获取头像以及昵称方法
- 微软 Visual Studio 2019 正式发布
- xiunobbs回帖时间排序修改
- 【Kafka】Kafka简单总结
- 法律纠纷信息检索(爬虫)
- 2022最详细,最新的 Win11/WIN10 安装CUDA11.2和cuDNN(必坑之作)完美教程
- 简单高效的直播直播系统源码需要的服务器
- 通过网络链接显示网页中的图片
- 【移动安全实战篇】————5、Android屏幕解锁图案破解