




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学号专业计算机科学技术名称实验日期2017/10/29教师签名结果实验报告实验名称第7章图形用户界面设计聊天软件实验目的1.学习Java图形用户界面设计2.学习Java事件处理实验原理1.Java编程基本原理面向对象编程的基本原理实验内容实验内容:基于给定聊天软件的基本案例程序设计完整的聊天软件。实验要求:1、两个人互相合作完成聊天软件设计。根据右图添加两个文本框,您可以在其中输入彼此的IP地址和端口号。在“显示聊天历史记录”区域中,向聊天当事人添加姓名。3添加键盘事件处理,然后按键盘上的ENTER键实现信息传输功能提示:您可以增加传输文本框组件的键盘响应事件处理,并从键盘事件处理方法发送数据
2、。方法如下:1、实现键盘响应接口class myextendsjframe extends jframe implements action listener,runnable,key listener2、重写键盘响应的三个事件keyPressed keyReleased keyTyped例如, public void key pressed(key event e)、if(e . get key code()=key event . vk _ enter)发送数据/enter键,如果是,则发送3、添加文本框组件和键盘响应事件关联密钥响应示例插入button send . addaction
3、listener(new action listener()/文本的事件public void action performed(action event e)Byte data =textsend.gettext()。getbytes();/导入发送文本框文字string add num=IP . get text();Tryinet paddress=inet address . get by name(add num);/设置目标IP地址data gram packet send packet=new data gram packet(data,data.length,address,2
4、013);datagramsocket post=new datagramsocket();/建立UDP转移物件post . send(send packet);/发送数据string S9=new string(send packet . get data()0,send packet . get length();/读取数据包simple date format df=new simple date format( yyyy-mm-DD hh :mm : ss );/设定日期格式Insert(s9,my style();Catch (Exception E1)text send . set
5、text( ););重写键盘响应Public void keyPressed(KeyEvent e)if(e . get key code()=key event . vk _ enter)Byte data =textsend.gettext()。getbytes();/导入发送文本框文字string add num=IP . get text();Tryinet paddress=inet address . get by name(add num);/设置目标IP地址/inet paddress=inet address . get byname( 127 . 0 . 0 . 1 );/
6、设置目标IP地址data gram packet send packet=new data gram packet(data,data.length,address,2013);/根据上一步骤中的目标地址创建UDP数据包,目标端口为2013datagramsocket post=new datagramsocket();/建立UDP转移物件post . send(send packet);/发送数据string S9=new string(send packet . get data()0,send packet . get length();/读取数据包simple date format
7、df=new simple date format( yyyy-mm-DD hh :mm : ss );/设定日期格式Insert(s9,my style();Catch (Exception E1)text send . settext( );公共语音关键点(KeyEvent e)/TODO Auto-generated method stub增效工具:字体和分栏设置public simple attributeset my style()/本身发布的字体颜色格式位于右侧simple attributeset myset=new simple attributeset();style con
8、stants . set foreground(myset,color . red);style constants . set alignment(myset,style constants . align _ right);style constants . set underline(myset,true);style constants . set font family(myset, lucida typewriter bold );style constants . set fontsize(myset,24);Return mySetpublic simple attribute
9、set his style()/对方发送的字体颜色格式位于右侧simple attributeset hit=new simple attributeset();style constants . set foreground(hit,color . blue);style constants . set alignment(hisset,style constants . align _ left);style constants . set underline(hit,true);style constants . set font family(hisset, lucida bright
10、italic );Style constants.set fontsize (hit,24);Return hisSet在区域中插入文本添加专用void insert (string str,simpleattributeset set)/自己的名称插入Try /文本simple date format df=new simple date format( yyyy-mm-DD hh :mm : ss );/设定日期格式str= n df . format(new date() n S3 : str n;doc . insert string(doc . get length()str n ,
11、set);doc . setparagraphattributes(doc . get length()-str . length()str . length()set,false);Catch (BadLocationException e)e . printstacktrace();在区域中插入图片B_icon=new JButton(“图片”);/插入图片b _ icon . addaction listener(new action listener()/插入图片事件public void action performed(action event arg 0)JFileChooser
12、 f=new jfile chooser();/查找文件F.showOpenDialog(空);InsertIcon(f . getselectedfile();/插入图片);专用void insert icon (file)/查找文件位置text . setcaretposition(doc . get length();/设定插入位置text . inserticon(new image icon(file . get path();/插入图片/insert(new FontAttrib();/这样可以换行清空文本区域:传入设置B_remove=new JButton(“清除”);/清除b
13、 _ remove . addaction listener(new action listener()/清除事件public void action performed(action event e)text . settext( ););演示文稿实施:插入图片:摘要或讨论1、这个程序不能在手机无线网络状态下运行。可能是因为系统被拦截,并且在具有网线的电网中测试成功。2、windows win10笔记本电脑防火墙权限高,无法交付,通过不断寻找解决方案解决。实作插图插入时,只会将插入插入插入到显示区域中,而不会实际传输。这次的成果大大提高了网络搜索能力。聊天的时候请点击确认按钮,记住5、有关代
14、码,请参阅附录Package qqchatimport Java . awt . border layout;import Java . awt . color;import Java . awt . graphics;import Java . awt . image;import Java . awt . event . action event;import Java . awt . event . action listener;import Java . awt . event . key event;import Java . awt . event . keylistener;import Java . io . file;import Java . net . datagrampacket;import Java . net . datagramsocket;impo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 系统分析师考试项目管理考察试题及答案
- 2024年系统分析师考试中的实践技能提升试题及答案
- 秘书证考试时间管理策略试题及答案
- 2025餐厅经营合同范本
- 2025中外合作企业股权转让合同
- 混合复习统计学试题及答案解析
- 2025钢筋混凝土厂房建设合同范本
- 江苏科技大学《综合材料视觉表现》2023-2024学年第一学期期末试卷
- 西北师范大学《地理语言学》2023-2024学年第一学期期末试卷
- 四川省棠湖中学2025届高三下学期第一次质量检测试题历史试题含解析
- 二年级下册三位数加减混合计算练习200题及答案
- 证劵公司招聘笔试题及答案
- 施工现场安全围挡
- 拐杖及助行器的使用方法课件
- 2024年黄芩素行业分析报告及未来发展趋势
- 风湿免疫科学教学设计案例
- 金属风管预制安装施工技术
- 2023年数学竞赛AMC8真题D卷(含答案)
- 宴席设计实务(烹饪专业高职)全套教学课件
- 牙刷的营销方案和策略
- 公路工程项目管理重点
评论
0/150
提交评论