问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

JAVA 窗口间数据传送

发布网友 发布时间:2024-04-14 15:24

我来回答

5个回答

热心网友 时间:2024-05-14 01:39

可以设置一个公共类,然后进行存和取就行了啊,下面我写的一个你看下,代码很乱:
import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.URL;
import java.util.Arrays;

import jpcap.JpcapCaptor;
import jpcap.JpcapSender;
import jpcap.NetworkInterface;
import jpcap.NetworkInterfaceAddress;
import jpcap.packet.EthernetPacket;
import jpcap.packet.Packet;

public class Common
{
public static int deviceindex=1;
public static NetworkInterface device[]=null;
public static NetworkInterface devices=null;
public static JpcapCaptor captor=null;
public static InetAddress thisIP=null;
public static byte[] thismac=null;
public static byte[] gwmac=null;
public static InetAddress srcIP=null;
public static InetAddress dstIP=null;
public static int scannum=2;

public static void initipmac(){
device=JpcapCaptor.getDeviceList();
for(int i=0;i<device.length;i++)
{
for (NetworkInterfaceAddress a : device[i].addresses)
{
if(a.address instanceof Inet4Address)
{thisIP=a.address; deviceindex=i;}
}
}
thismac=device[deviceindex].mac_address;
}
public static void initgwmac(){
try{
devices=JpcapCaptor.getDeviceList()[0];
captor=JpcapCaptor.openDevice(devices,65535,false,20);
captor.setFilter("tcp and dst host "+InetAddress.getByName("www.microsoft.com").getHostAddress(),true);
}
catch(Exception e){System.out.println("catch an error");}
while(true){
try{new URL("http://www.microsoft.com").openStream().close();}catch(Exception e){}
Packet ping=captor.getPacket();
if(ping==null){
System.out.println("cannot obtain MAC address of default gateway.");
break;
}else if(Arrays.equals(((EthernetPacket)ping.datalink).dst_mac,devices.mac_address))
continue;
gwmac=((EthernetPacket)ping.datalink).dst_mac;
break;
}
}
public static void set3c(InetAddress c1,InetAddress c2,int c3){
srcIP=c1;
dstIP=c2;
scannum=c3;

}
public static byte[] strtomac(String ipAddress)
{
String[] ip=new String[6];
int[] pos=new int[5];
pos[0]=ipAddress.indexOf("-");
pos[1]=ipAddress.indexOf("-",pos[0]+1);
pos[2]=ipAddress.indexOf("-",pos[1]+1);
pos[3]=ipAddress.indexOf("-",pos[2]+1);
pos[4]=ipAddress.indexOf("-",pos[3]+1);

ip[0]=ipAddress.substring(0,pos[0]);
ip[1]=ipAddress.substring(pos[0]+1,pos[1]);
ip[2]=ipAddress.substring(pos[1]+1,pos[2]);
ip[3]=ipAddress.substring(pos[2]+1,pos[3]);
ip[4]=ipAddress.substring(pos[3]+1,pos[4]);
ip[5]=ipAddress.substring(pos[4]+1);
for(int i=0;i<ip.length;i++)
System.out.println(ip[i]);
System.out.println(Integer.toHexString(Integer.parseInt(ip[0])));
thismac=new byte[]{(byte)0x00,(byte)0x01,(byte)0x02,(byte)0x03,(byte)0x04,(byte)0x05};
return thismac;
}
public static long ipv4tolong(String ipAddress)
{
long[] ip=new long[4];
int position1=ipAddress.indexOf(".");
int position2=ipAddress.indexOf(".",position1+1);
int position3=ipAddress.indexOf(".",position2+1);

ip[0]=Long.parseLong(ipAddress.substring(0,position1));
ip[1]=Long.parseLong(ipAddress.substring(position1+1,position2));
ip[2]=Long.parseLong(ipAddress.substring(position2+1,position3));
ip[3]=Long.parseLong(ipAddress.substring(position3+1));

if(ip[0]<0||ip[1]<0||ip[2]<0||ip[3]<0||ip[0]>255||ip[1]>255||ip[2]>255||ip[3]>255)
return 0;
else
return (ip[0]<<24)+(ip[1]<<16)+(ip[2]<<8)+ip[3];
}

public static String longtoipv4(long longIP)
{
if(longIP<0)
return null;

StringBuffer sb=new StringBuffer("");
sb.append(String.valueOf(longIP>>>24));
sb.append(".");
//将高8位置0,然后右移16位
sb.append(String.valueOf((longIP&0x00FFFFFF)>>>16));
sb.append(".");
sb.append(String.valueOf((longIP&0x0000FFFF)>>>8));
sb.append(".");
sb.append(String.valueOf(longIP&0x000000FF));
String sc=sb.toString();
return sc;
}
}

反正总结一下就是:
1、可以用public static对参数的赋值
2、用自定义的get和set方法,如下 :
class class1
{
private int height;
private int weight;
private int depth;
public void setHeight(int height){
this.height=height;
}
public int getHeight(){
return height;
}
public void setWeight(int weight){
this.weight=weight;
}
public int getWeight(){
return weight;
} public void setDepth(int depth){
this.depth=depth;
}
public int getDepth(){
return depth;
}
}

热心网友 时间:2024-05-14 01:39

你是用jframe做的窗口么?
是的话如下:
按照你的题目要求 可以把窗口1作为主窗口 在主程序中调用 窗口2为副窗口 由窗口1调用。
接下来是窗口类的实现 。 声明先两个窗口类分别是 mJFrame 、nJFrame, 两个类都extends JFrame 有:
mJFrame 窗口1;
nJFrame 窗口2;
接下来就是最重要的了,声明类
窗口1如下:
public class mJFrame extends JFrame{
nJFrame 窗口2; //声明窗口2的类对象

public mJFrame(){
.........

}

//然后在按钮的实现函数中:
nf = new nJFrame(this); //!! 把两个窗口联系起来
nf.setVisible(true); //设置窗口2为可见
this.setVisible(false);//该窗口隐藏

public static void main(..){

mJFrame 窗口1 = new mJFrame();
窗口1.setVisible(true);
窗口1.setDefaultCloseOp.........;
}

}

窗口2的类声明时如下:
public class nJFrame extends JFrame{
mJFrame 窗口1; // 声明一个窗口1的类对象
public nJFrame(mJFrame mframe){
窗口1 = mframe; //赋值
}

窗口1.time..... // 调用time

//按钮实现函数中:
窗口1.setVisible(true);
this.setVisible(false);
}

还有什么不明白的可以hi我阿

热心网友 时间:2024-05-14 01:40

在创建窗口时 将对象引用放放到公共静态变量中

设窗口1的类名FistWindows
设窗口2的类名SecondWindows
你在类Form中创建FistWindows的对象

则:
Form.java
.......
public static FistWindows obFistWindows;
.......
obFistWindows= new FistWindows();
......

通过Form.obFistWindows.公共变量名 就可以在任何地方引用FistWindows中的所有公共变量了,但注意前提是你创建了这个窗口,所以要排除obFistWindows为null的情况

至于SecondWindows 就如法炮制了

热心网友 时间:2024-05-14 01:40

个人建议,仅供参考:
在构造方法方法中声明另外一个窗口还行,
不过感觉不太好,
新建一个专门保存数据time的类,
提供存取接口就是了
窗口1,2建议用单例模式实现
这样只会有一个
保存数据time的类看来也要用单例模式来做了
:)

热心网友 时间:2024-05-14 01:41

把要传递的变量set到session中不就行了?以后的窗口要用的话直接get出来。至于窗口的切换,通过按钮的链接不就OK了?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
表格列求和公式怎么设置 求和函数公式怎么输入 北京注册成立一个公司需要多少钱 北京公司都是什么 手机导航地图语音怎么下载 如何分别真金和仿金首饰 怎样区分真金和仿金首饰呢 小学生新年晚会主持人的串词!!(不要太多)急 大大后天就需要了!!!_百度... 周年晚会策划公司 奥格瑞玛传送门大厅在哪 奥格瑞玛传送门大厅怎么走 ...temp = new String(iPPacket.data,&quot;gb2312&quot;); 如何将jpcap 中byte[] 类型的packet.data 转换成String,而不出现乱 ... 结婚给女方彩礼钱,该不该收呢? 结婚礼金该不该收,随多少呢? 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... 自然界中性别决定的方式只XY型和ZW型这句话为什么错了? 片数的单位是什么字母 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... 产后盗汗如何进行饮食调理,产后多久可以收缩盘骨 王红门的拼音怎么打 王四影拼音 表白被拒后还能做朋友吗 如何在联想乐pad集成的新浪音乐中将喜欢的音乐建立音乐列表进行... ...放音乐的时候,总会弹出这样的窗口? 应该如何解决这个问题? 怎样做色香味俱全的扁肉燕? 有什么关于扁肉燕的做法分享? 福州肉燕有哪些详细的做法? 燕饺一个多重 苹果核中的苹果籽有毒吗苹果籽有毒吗 ...IMEI为381180201130934 ICCID为8986 0050 1909 1020 懂JAVA的进!!!急需~~~ 龙桥工业区属于哪个区 中国人和外国人在第三国家结婚,在中国怎么申请签证 英文当时的时态 我的上颌骨靠近牙齿的地方长了个脓包,请问怎样治疗啊?能不能不抽神经... 从龙岩市冠豸山出发到武夷山高速路口有经过大金湖吗? 生日1989年阴历6月19是什么星座 八三年阴历6月19是什么星座 龙之梦客运到灯塔半拉山子有客运吗? 杨树子村位于哪个省哪个市 赤水河边的石碑上写的什么 有谁知道``“脉望”吗? 脉望的解释 ...项目可以因为招标过程存在问题而终止合同重新招标么? 工程项目变更业主,原招标工作中止,招标公告撤销,由新业主重新组织公开招 ... 美缝:让缝隙焕发美感 雪地寻踪最喜欢的人物 广州智唯易才企业管理顾问有限公司佛山分公司怎么样? 湖北智唯科技有限公司怎么样? 前男友找了一个女朋友,跟我长相一样。 本来我一直没放下。但后来看到...