java常见问题(一)

1.文本域如何添加滚动条

package test;
import java.awt.*;
import javax.swing.*;
public class gao extends JFrame{
    JTextArea jtext=new JTextArea();
    JScrollPane js = new JScrollPane(jtext);   // 滚动条
    public gao() {
        super("滚动条");
        this.setLayout(null);
        js.setBounds(30,30,120,80);
        add(js);
        this.setSize(250,180);
        this.setVisible(true);      
    }
    public static void main(String args[]) {
        new gao();
    }
}

把文本域包含在滚动条中

2.写文件时如何在之前的基础上追加内容(即不覆盖之前的内容)

在不知道存在现成的方法时,尝试着在写文件时先读取文件中存在的内容,相当于每次写文件都要先读文件中内容再将新的内容添加到尾部,试着做了一下可以把原来的内容保留下来,但是新添加的内容就会重复出现多次,遂无果。而且,如果文件大的话,效率肯定就慢。一番查找发现了捷径:public FileOutputStream(File file,boolean append)
创建一个向指定 File 对象表示的文件中写入数据的文件输出流。如果第二个参数为 true,则将字节写入文件末尾处,而不是写入文件开始处。实验确实可以。

package test;
import java.io.*;
public class gao{
    public static void main(String args[]) {
        try {
            File file = new File("D://writeFile.txt"); // 创建文件对象
            if (!file.exists()) { // 如果该文件不存在
                file.createNewFile(); // 新建文件
            }
            FileOutputStream fos = new FileOutputStream(file,true); // 创建FileOutputStream实例
            byte[] bytes = "追加的内容".getBytes(); // 创建字节数组
            fos.write(bytes); // 向文件中写数据
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

如果验证的话可以先手动在D盘新建一个writeFile.txt文件,随意添加几句话,再执行这个程序。
OutputStream()是按字节流输出。
复习一下:
java按处理数据的单位划分,支持两种基本的流类型:字节流和字符流。

 字节流字符流
输入InputStreamReader
输出OutputStreamWriter

3.如何创建选项卡面板(即标准面板和程序员面板)

package test;

import java.awt.Container;

import javax.swing.*;

public class gao extends JFrame{
    JTabbedPane dbTabPane;  //选项卡面板
    JPanel inputPanel;        // 面板1;
    JPanel viewPanel;       // 面板2;

    JLabel label1=new JLabel("这是面板一");
    JLabel label2=new JLabel("这是面板二");
    public gao(){
        super("选项卡");
        Container c = getContentPane();
        dbTabPane = new JTabbedPane();
        // 定义面板1
        inputPanel = new JPanel();
        inputPanel.setLayout(null);
        label1.setBounds(30, 30, 100, 30);
        inputPanel.add(label1);     
        //可以添加其他组件
        dbTabPane.add(inputPanel,"面板一" );

        // 定义面板2
        viewPanel = new JPanel();
        viewPanel.setLayout(null);
        label2.setBounds(30, 30, 100, 30);
        viewPanel.add(label2);
        //可以添加其他组件
        dbTabPane.add(viewPanel,"面板二");

        c.add(dbTabPane);
    }
    public static void main(String args[]) {
            gao g=new gao();
            g.setSize(300, 200);
            g.setVisible(true);
    }
}

这是模板可以在上添加多个面板以及在面板上添加其他组件。
最近在看朱元璋电视剧,其中一句话印象较为深刻:
高筑墙、广积粮、缓称王

百度百科

百度百科


百度百科显示是朱元璋征求学士朱升对他的意见,而在剧中我清晰的记得是李善长对他的建议。不过不管是谁说,这其中蕴含的道理是不变的。我听完脑海中浮现了一句话:打铁还需自身硬。共勉吧。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高二的笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值