写面板真的是写到吐血,深深感受到什么叫又臭又长,可能是自己用的太烂吧。

关于布局管理器不写一下还是不懂,另外加面板的思想跟html中div的感觉差不多。

发现的一个小彩蛋:用JScrollPane的时候想在其中加入JTextArea必须在newJScrollPane的时候加,用jsp.add(t)是怎么也不会出现的。

还有一个小问题,每次测试打开图形化界面的时候一定要改变一下窗口大小才会刷新界面是为什么?

事件处理还是百思不得其解。

12-20

写了很久其实对事件处理还是一知半解,稍微懂了点匿名监听,上次的上机作业算是完成了,贴上代码。

 import java.awt.*;
import java.awt.event.*;
import java.io.FileWriter;
import java.io.IOException; import javax.swing.*; public class outlook extends JFrame{ JFrame frm=new JFrame("文本编辑器");
JButton save=new JButton("Save");
JButton can=new JButton("Cancel");
JButton exit=new JButton("Exit");
JPanel areabottom=new JPanel();
JTextArea t=new JTextArea();
JScrollPane mid=new JScrollPane(t,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
public outlook()
{ frm.setVisible(true); frm.setBounds(50, 50, 500, 400);
frm.setLayout(new BorderLayout(5,5)); areabottom.setLayout(new FlowLayout(FlowLayout.CENTER,40,10)); t.setLineWrap(true);
t.setWrapStyleWord(true); save.setPreferredSize(new Dimension(80,30));
can.setPreferredSize(new Dimension(80,30));
exit.setPreferredSize(new Dimension(80,30)); areabottom.add(save);
areabottom.add(can);
areabottom.add(exit); frm.add("South",areabottom);
frm.add("Center",mid); areabottom.setSize(140, 0); can.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
t.setText("");
}
}); save.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
String s=t.getText();
try {
FileWriter wf=new FileWriter("2.txt");
wf.write(s);
wf.flush();
wf.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
});
exit.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
frm.dispose();
}
});
} public static void main(String[] args){
new outlook();
} }

java面板设计的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. java大作业 KShinglingAlgorithm

    wiki上关于KShingling Algorithm(w-shingling)的说明: http://en.wikipedia.org/wiki/W-shingling 摘要: In natural ...

  3. Java多线程之赛跑游戏

    在JavaSE中,多线程是一个重要的内容. 我们要了解多线程的概念,就要先了解进程的概念:要了解进程的概念,就离不开操作系统的概念. 在一台正常运行的电脑中,计算机硬件(如CPU.内存.硬盘.网卡.显 ...

  4. Java多线程之赛跑游戏(含生成exe文件)

    在JavaSE中,多线程是一个重要的内容. 我们要了解多线程的概念,就要先了解进程的概念:要了解进程的概念,就离不开操作系统的概念. 在一台正常运行的电脑中,计算机硬件(如CPU.内存.硬盘.网卡.显 ...

  5. < JAVA - 大作业(2)仿qq即时通讯软件 >

    < JAVA - 大作业(2)仿qq即时通讯软件 > 背景 JAVA上机大作业:设计一个仿qq即时通讯软件 任务简要叙述:设计一款仿QQ的个人用户即时通讯软件,能够实现注册,登陆,与好友聊 ...

  6. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  7. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  8. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  9. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

随机推荐

  1. 在基类中的析构函数声明为virtual

    #include <iostream> using namespace std; class Father { public: ~Father() { cout << &quo ...

  2. sql语句开发使用---update

    单表的更新大家都用过了,现在说下实际开发过程中,需要多表的查询更新状态,或者跨数据库的更新状态. 东西需要学习了才会懂得,所以站在巨人的肩膀看的更远. sql 语法; UPDATE 表名称 SET 列 ...

  3. docNet基础学完感想

    开学后的一个多月因为要准备acm省赛,所以docnet视频基本没看了!不过,虽然在省赛前每天都在做题,赛前刷了80多题吧!!但是比赛的时候就3题,渣啊!只做出了3个水题,后面两个小时搞两题就是出不来, ...

  4. FineUI框架 使用asp.net控件及其使用问题

    FineUI 基于ExtJS的开源ASP.Net框架库--创建 No JavaScript,No CSS,No UpdatePanel,No ViewState,No WebServices 的网站应 ...

  5. Spring_database_Template

    配置applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans ...

  6. win7程序关闭后弹出 程序兼容性助手 这个程序可能安装不正确 如果此程序没有正确安装,处理方式

    用WTL编写的程序,编译成release后,在win7上关闭后,弹出这个对话框 处理方法: 将这个xml文件命名成 xxx.exe.manifest,保存到指定目录下 <?xml version ...

  7. 200常用JS

    .文本框焦点问题 onBlur:当失去输入焦点后产生该事件 onFocus:当输入获得焦点后,产生该文件 Onchange:当文字值改变时,产生该事件 Onselect:当文字加亮后,产生该文件 &l ...

  8. Oracle的大数据类型,BIG DATA TYPE

    1.CLOB 字符LOB类型,主要用于存储大型英文字符 2.NCLOB 国际语言字符LOB类型,主要用于存储大型非英文字符 3.BLOB 二进制LOB类型,主要用于存储二进制数据 4.BFILE 二进 ...

  9. Qt在Linux环境下应用程序字体模糊的解决方法(先改成使用默认字体,然后使用qtconfig配置)

    这两天一直在用Qt实现一个跨平台的软件.软件之前在Windows上编写的,后来放到里Ubuntu 10.10下编译.程序运行时遇到一个很棘手的问题,界面文本非常模糊.后来在网上查阅了好几天的资料,经历 ...

  10. 用QComboBox实现tree状结构(QComboBox居然有setView和setModel函数)

    实现的效果图如下:  #include "mainwindow.h" #include <QApplication> #include <QTreeView> ...