⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gui.py

📁 Java Communicating Agents是一个用于开发网络反应式信息agent的框架
💻 PY
字号:
#!/usr/bin/env jpythonimport javaimport javaximport jacommaimport sysfrom java.awt import BorderLayout, GridLayoutfrom jacomma.icm.type import Handle, Symbolfrom jacomma.platform.core import Agent, AgentManager, \	 MessagePattern, AgentObserverAdapterfrom javax.swing import *class my_action_listener( java.awt.event.ActionListener ):	def __init__( self, tgtbox, msgbox, agent ):		self.tgtbox_ = tgtbox 		self.msgbox_ = msgbox		self.agent_ = agent	def actionPerformed( self, evt ):		self.agent_.send( Handle.createHandle( self.tgtbox_.getText() ), \						  self.msgbox_.getText() )class my_window_listener( java.awt.event.WindowAdapter ):	def windowClosing( self, evt ):		jacomma.platform.core.AgentManager.instance.stopEngine()# make a framedef make_gui( agent ):	f = JFrame( agent.getHandle().toString() )	f.addWindowListener( my_window_listener( ) )	tp = JPanel( GridLayout( 2, 2 ) )	tp.add( JLabel( "Target: " ) )	tgtbox = JTextField( 20 )	tp.add( tgtbox )	tp.add( JLabel( "Message: " ) )	msgbox = JTextField( 20 )	tp.add( msgbox )	tp.setBorder( BorderFactory.createEtchedBorder() )	p = JPanel( BorderLayout() )	p.add( tp, BorderLayout.CENTER )	b = JButton( "Send!" )	b.addActionListener( my_action_listener( agent, tgtbox, msgbox ) )	p.add( b, BorderLayout.SOUTH )	f.getContentPane().add( p )	return fag = AgentManager.instance.createAgent( sys.argv[1], AgentObserverAdapter() )

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -