繁体   English   中英

setFont()导致JFrame加载太慢,java

[英]setFont() causing JFrame loading too slow , java

对于这个问题,我需要您的帮助。...我有一个JFrame,其某些组件上具有setFont(font)函数。 setFont函数导致JFrame加载太慢。 有什么替代品吗?或者我应该在Java包中导入字体吗????

Font userTextFont=new Font("Joy",Font.BOLD,15);
userText.setFont(userTextFont);

如果我删除它加载好

userText.setFont(userTextFont);

userText是一个JTextField ...

短代码(有类似问题):

import java.awt.Font;
import javax.swing.*;
import java.awt.*;

public class fonttest{

  public static void main(String[] args)
  {

      fonttest f1=new fonttest();
      f1.go();
  }
     public void go()
   {
      JFrame frame=new JFrame();

      JTextField userTextField=new JTextField(40);
      Font font=new Font("Impact",Font.BOLD,16);
      userTextField.setFont(font);

      frame.getContentPane().add(userTextField);
      frame.setVisible(true);
      frame.setSize(100,100);

   }

} 

组件“缓慢”加载的问题是尚未验证它们。 用于setVisible方法的Window javadoc说:

如果窗口和/或其所有者尚不可显示,则两者都将变为可显示。 在使窗口可见之前,将对其进行验证。

调用setVisible() ,需要验证所有组件。 您可以在JFrame上调用setVisible()并调用pack()之前验证它们:

  frame.getContentPane().add(userTextField);
  frame.pack();
  frame.setSize(100,100);
  frame.setVisible(true);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM