怎么在java的文本框中设置字体和颜色?

怎么在java的文本框中设置字体和颜色?,第1张

方法如下:

颜色的英文是color,如果swing,所以你定义的对象 会有这个color属性。

jsp就用<font>标签,里面也有color属性。

字体swing就是font。

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

调用需要设置颜色的控件的setBackgroud()方法就可以了。

但是设置JFrame和JLabel的背景色,一般就是下面的做法

JFrame frame = new JFrame()

frame.setBackground(Color.Red)

JLabel l = new JLabel()

l.setBackground(Color.Yellow)

frame.add(l)

结果根本就没有反应。这是由于Swing跟AWT有千丝万缕的联系,它既要支持AWT又要有自己新的体系,所以呢,这个如果对于AWT中的Frame是可以直接通过setBackground来设置背景色,但是对于JFrame则不可以,应该采用下面的方法:

JFrame frame = new JFrame()

frame.getContentPane().setBackground(Color.Red)

而对于JLabel来说则要设置JLabel为不透明的才行,即

JLabel comp = new JLabel(value)

comp.setBackground(color)

comp.setOpaque(true)

这句代码frame.setBackground(Color.Red)

改变的是框架的颜色,框架的上面还有窗格,所以你要改变窗格的颜色才可以侧低改变框架的颜色

在主函数里加Containerframe.getContentPane()意思是获得窗格

             setBackground(Color.Red)                       改变窗格颜色

另外再附一段背景颜色渐变的代码

运行示意图如下:

import java.awt.Color

import java.awt.GradientPaint

import java.awt.Graphics

import java.awt.Graphics2D

import javax.swing.JPanel

import java.awt.BorderLayout

import java.awt.EventQueue

import javax.swing.JFrame

import javax.swing.JPanel

class ShadePanel extends JPanel {

   

    private static final long serialVersionUID = -2644424271663261406L

   

    public ShadePanel() {

        super()

        setLayout(null)

    }

   

    @Override

    protected void paintComponent(Graphics g1) {// 重写绘制组件外观

        Graphics2D g = (Graphics2D) g1

        super.paintComponent(g)// 执行超类方法

        int width = getWidth()// 获取组件大小

        int height = getHeight()

        // 创建填充模式对象

        GradientPaint paint = new GradientPaint(0, 0, Color.CYAN, 0, height,

                Color.MAGENTA)

        g.setPaint(paint)// 设置绘图对象的填充模式

        g.fillRect(0, 0, width, height)// 绘制矩形填充控件界面

    }

}

 

 

 

public class ShadeBackgroundImage extends JFrame {

   

   

    private static final long serialVersionUID = 4693799019369193520L

    private JPanel contentPane

   

   

    public static void main(String[] args) {

        EventQueue.invokeLater(new Runnable() {

            public void run() {

                try {

                    ShadeBackgroundImage frame = new ShadeBackgroundImage()

                    frame.setVisible(true)

                } catch (Exception e) {

                    e.printStackTrace()

                }

            }

        })

    }

   

   

    public ShadeBackgroundImage() {

        setTitle("背景为渐变色的主界面")// 设置窗体标题

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

        setBounds(100, 100, 450, 300)

        contentPane = new JPanel()// 创建内容面板

        contentPane.setLayout(new BorderLayout(0, 0))

        setContentPane(contentPane)

        ShadePanel shadePanel = new ShadePanel()// 创建渐变背景面板

        contentPane.add(shadePanel, BorderLayout.CENTER)// 添加面板到窗体内容面板

    }

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7890128.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存