java面板设计
写面板真的是写到吐血,深深感受到什么叫又臭又长,可能是自己用的太烂吧。
关于布局管理器不写一下还是不懂,另外加面板的思想跟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面板设计的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- java大作业 KShinglingAlgorithm
wiki上关于KShingling Algorithm(w-shingling)的说明: http://en.wikipedia.org/wiki/W-shingling 摘要: In natural ...
- Java多线程之赛跑游戏
在JavaSE中,多线程是一个重要的内容. 我们要了解多线程的概念,就要先了解进程的概念:要了解进程的概念,就离不开操作系统的概念. 在一台正常运行的电脑中,计算机硬件(如CPU.内存.硬盘.网卡.显 ...
- Java多线程之赛跑游戏(含生成exe文件)
在JavaSE中,多线程是一个重要的内容. 我们要了解多线程的概念,就要先了解进程的概念:要了解进程的概念,就离不开操作系统的概念. 在一台正常运行的电脑中,计算机硬件(如CPU.内存.硬盘.网卡.显 ...
- < JAVA - 大作业(2)仿qq即时通讯软件 >
< JAVA - 大作业(2)仿qq即时通讯软件 > 背景 JAVA上机大作业:设计一个仿qq即时通讯软件 任务简要叙述:设计一款仿QQ的个人用户即时通讯软件,能够实现注册,登陆,与好友聊 ...
- 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题
背景起因: 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...
- Elasticsearch之java的基本操作一
摘要 接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...
- 论:开发者信仰之“天下IT是一家“(Java .NET篇)
比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...
- 故障重现, JAVA进程内存不够时突然挂掉模拟
背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...
随机推荐
- win7程序关闭后弹出 程序兼容性助手 这个程序可能安装不正确 如果此程序没有正确安装,处理方式
用WTL编写的程序,编译成release后,在win7上关闭后,弹出这个对话框 处理方法: 将这个xml文件命名成 xxx.exe.manifest,保存到指定目录下 <?xml version ...
- BZOJ 1211: [HNOI2004]树的计数( 组合数学 )
知道prufer序列就能写...就是求个可重集的排列...先判掉奇怪的情况, 然后答案是(N-2)!/π(d[i]-1)! -------------------------------------- ...
- Linux中ssh的免密码登陆
原理: Hadoop的各个节点要实时的进行各种通信的,ssh就是能让各个节点免密码的相互访问相互通信. 操作步骤: 这里用的加密方式是非对称的加密方式,具体的操作是: <1>执行命令ssh ...
- jquery+easy ui 实现表格列头筛选
示例代码 1.筛选的下拉 <a href="javascript:void(0)" id="filterStatus" class="easyu ...
- Android 开发笔记 “弹出框”
AlertDialog.Builder builder = new AlertDialog.Builder(Activity.this); builder.setMessage("Are y ...
- ASP.NET jQuery 随笔 使用jQuery UI的Autocomplete方法实现文本框的自动搜索填充功能
首先当然是去下载JQuery UI ,这里这里是下载地址http://jqueryui.com/ 第一步是点击这里 第二步选择你想要下载的主题进行下载 我这里是选择的cupertino主题包 点击圆圈 ...
- Win32 SecuritySetting
http://flylib.com/books/en/2.21.1.207/1/ http://blogs.technet.com/b/heyscriptingguy/archive/2011/11/ ...
- python defaultdict 类型
在Python里面有一个模块collections,解释是数据类型容器模块.这里面有一个collections.defaultdict()经常被用到.主要说说这个东西. 综述: 这里的defaultd ...
- 再探java基础——break和continue的用法
再探java基础——break和continue的用法 break break可用于循环和switch...case...语句中. 用于switch...case中: 执行完满足case条件的内容内后 ...
- perl lwp 超时问题
lwp 超时问题: jrhmpt01:/root/async# cat a1.pl use LWP::UserAgent; use utf8; use DBI; use POSIX; use Data ...