Topic: 求助~!!!怎样才能解决窗口拖动导致的重画问题~ |
Print this page |
1.求助~!!!怎样才能解决窗口拖动导致的重画问题~ | Copy to clipboard |
Posted by: 22750124 Posted on: 2005-07-15 23:05 import javax.swing.*; import java.awt.*; import java.awt.event.*; class DrawPanel extends JPanel { public void paintComponent(Graphics g) { GraphicsEnvironment ge; ge=GraphicsEnvironment.getLocalGraphicsEnvironment(); Font[] f=ge.getAllFonts(); g.drawString("系统中所有的字体="+String.valueOf(f.length),20,50); g.drawString("在工具包中的字体=",20,75); //Toolkit tk=Toolkit.getDefaultToolkit(); //String[] str=tk.getFontList(); String[] str=ge.getAvailableFontFamilyNames(); int y=100; Font defaultFont=g.getFont(); for(int i=0;i<str.length;i++){ g.setFont(defaultFont); g.drawString("* "+str[i],50,y); //使用不同的字体 g.setFont(new Font(str[i],Font.BOLD,14)); g.drawString("Font",150,y); g.setFont(new Font(str[i],Font.ITALIC,16)); g.drawString("Font",250,y); g.setFont(new Font(str[i],Font.BOLD+Font.ITALIC,20)); g.drawString("Font",350,y); y=y+50; } //FontMetrics;getFontMetrics(); 自己看 } } public class FontsDemo extends JFrame{ FontsDemo(){ //关闭窗口 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setTitle("绘图模式"); setSize(500,600); DrawPanel panel=new DrawPanel(); //获得上下文引用,不能直接add Container c=getContentPane(); c.add(panel); } public static void main(String[] args){ FontsDemo f=new FontsDemo(); f.setVisible(true); } } |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |