LMNtal LMNtal LMNtal JAVA JAVA JAVA LMNtal LMNtal LMNtal

Size: px
Start display at page:

Download "LMNtal LMNtal LMNtal JAVA JAVA JAVA LMNtal LMNtal LMNtal"

Transcription

1 2003 LMNtal GUI GUI : : : 1G00P024-3

2 LMNtal LMNtal LMNtal JAVA JAVA JAVA LMNtal LMNtal LMNtal

3 1 1 2 LMNtal LMNtal Atom LMNtal GUI Java MVC Control LMNtal MVC JAVA i

4 MVC denntaku byouga control Runtime A 37 A A ii

5 1.1 LMNtal LMNtal Boud iii

6 2.1 LMNtal iv

7 1 Grid LMNtal LMNtal LMNtal LMNtal LMNtal a(x1),c(x1,x2),a(x2) X1 X2 a c a = a(x1),c(x1,x2),a(x2) 1.1: LMNtal LMNtal GUI JAVA GUI LMNtal LMNtal 1

8 GUI LMNtal GUI GUI 2

9 2 LMNtal 2.1 LMNtal LMNtal Atom a(x,y) a(y,x) LMNtal append 3

10 res a c c n res c a c c c n c c res c c c c n <rule1> <rule2> Z0 X0 X Z0 Z X Z0 X0 Z0 a c :- c a a n :- Y A A Y Y n n Y :- 2.1: LMNtal 4

11 2.2 LMNtal X p LMNtal P P ::= 0 (null) p( X) (atom) P,P (composition) {P (cell) {P/ (stable cell) (T :- T) (reaction rule) T T ::= 0 (null) p( X) (atom) T,T (composition) {T (cell) {T/ (stable (rule variable) $p(fvspec) (process variable) 2.1: LMNtal $p {a(x),$p $p FVspec T P P P P {P P 5

12 append { append(lst1, Lst2, Res), res(res), c(v1, N1, Lst1), c(v2, N2, N1), n(n2), no1(v1), no2(v2), c(v3, N3, Lst2), c(v4, N4, N3), n(v4), no3(v3), no4(v4), ( append(x0,y,z0), c(a,x,x0) :- c(a,z,z0), append(x,y,z) ), ( append(x0,y,z0), n(x0) :- Y=Z0 ) 2.3 LMNtal JAVA LMNtal JAVA LMNtal JAVA /*inline*/ JAVA [[]] [[/*inline*/ System.out.println("inline");]] 2.4 a 6

13 a(x),5(x) b(x1),s(x1,x),5(x) b(x1),6(x1) 2.5 p(x),$i[x] :- $i < $c, 3($c) q(y),q(z),$i[y],$i[z]. $i p(x),x=0 :- q(y),q(z),y=0,z=0. p(x),x=1 :- q(y),q(z),y=1,z=1. p(x),x=2 :- q(y),q(z),y=2,z=2. p($a):-int($a) q($a),q($a). p q 7

14 3 GUI 3.1 LMNtal 3.2 Java JAVA java.util.eventobject 3.3 MVC MVC 8

15 MVC MVC LMNtal MVC Control 9

16 class Control { Object[] objects; int objectid; public Control(){ objects = new Object[100]; objectid = 0; addpanel(); public String addpanel(){ LMNtalpanel g = new LMNtalpanel(); Frame lmntalframe = new LMNtalframe(g); objects[objectid] = g; objectid++; lmntalframe.show(); return Integer.toString(objectid-1); n){ public void addline(string x1,string x2, String y1,string y2,string Line line = new Line( Integer.parseInt(x1),Integer.parseInt(x2), Integer.parseInt(y1),Integer.parseInt(y2)); ((LMNtalpanel)objects[Integer.parseInt(n)]).addDraw(line); ((LMNtalpanel)objects[Integer.parseInt(n)]).repaint(); public String addbutton(string a,string b){ JButton button = new JButton(a); ((LMNtalpanel)objects[Integer.parseInt(b)]).add(button); ((LMNtalpanel)objects[Integer.parseInt(b)]).repaint(); objects[objectid] = button; objectid++; return Integer.toString(objectid-1); public void addlistener(string id,abstractmembrane mem){ int j = Integer.parseInt(id); if(objects[i] instanceof JButton){ new ButtonListener((JButton)objects[j],mem); 10

17 addpanel addbutton Control addline addlistener Control LMNtal ID ID ID LMNtal ID LMNtal (addbutton(x,id,label):-[[/*inline*/ String s = Sample.control.addButton( me.getarg(0).getatom().tostring(), me.getarg(1).getatom().tostring()); Functor f1 = new Functor(me.getArg(2).getAtom().toString(),1); Functor f2 = new Functor(s,1); Atom a = me.getmem().newatom(f1); Atom b = me.getmem().newatom(f2); Link l1 = new Link(a,0); Link l2 = new Link(b,0); a.args[0] = l2; b.args[0] = l1; ]](X,ID,LABEL)), Control addbutton addbutton ID ID

18 buttonevent(x),label(x) buttonevent buttonevent(x):-( buttonevent (addlistener(x):-[[/*inline*/ Sample.control.addListener( me.getarg(0).getatom().tostring(),me.getmem()); ]](X)) ID addlistener 12

19 class ButtonListener implements ActionListener{ AbstractMembrane mem; JButton button; String label; public ButtonListener(JButton button1,abstractmembrane mem1){ button = button1; label = button.gettext(); mem = mem1; button.addactionlistener(this); public void actionperformed(actionevent evt){ Functor f1 = new Functor("buttonevent",1); Functor f2 = new Functor(label,1); Atom a = mem.newatom(f1); Atom b = mem.newatom(f2); Link l1 = new Link(a,0); Link l2 = new Link(b,0); a.args[0] = l2; b.args[0] = l1; actionperformed 3.5 paintcomponent k paintcomponent Draw Draw 13

20 class Draw{ Draw ndraw; public void draw(graphics g){ paintcomponent Draw Drawn draw class Line extends Draw{ int x1,x2,y1,y2; public Line(int xx1,int xx2,int yy1,int yy2){ x1 = xx1;x2 = xx2;y1 = yy1;y2 = yy2; public void draw(graphics g){ g.drawline(x1,x2,y1,y2); Draw paintcomponent 14

21 class LMNtalpanel extends JPanel{ Draw ldraw,cdraw; public LMNtalpanel(){ public void paintcomponent(graphics g){ cdraw = ldraw; while(cdraw!= null){ cdraw.draw(g); cdraw = cdraw.ndraw; public void adddraw(draw draw){ draw.ndraw = ldraw; ldraw = draw; repaint(); public void resetdraw(){ ldraw = null; paintcomponent Draw adddraw Draw resetdraw Draw LMNtal ID (line(x1,y1,x2,y2,id):-[[/*inline*/ Sample.control.addLine( me.getarg(0).getatom().tostring(), me.getarg(1).getatom().tostring(), me.getarg(2).getatom().tostring(), me.getarg(3).getatom().tostring(), me.getarg(4).getatom().tostring()); ]](X1,Y1,X2,Y2,ID)) Draw repaint LMNtal repaint repaint repaint LMNtal 15

22 (repaint(x):-[[/*inline*/ ((LMNtalpanel)Sample.control.objects [Integer.parseInt( me.getarg(0).getatom().tostring()]).resetdraw(); ]](X)), Draw 3.6 LMNtal MVC LMNtal buttonevent { model(x1){a(x1) view(x2){a(x2),buttonevent(x),label(x) (view(x2){a(x2),buttonevent(x),$p,model(x1),{a(x1),$q:- view(x2){a(x2),$p,model(x1){a(x1),add(x),$q) 3.7 repaint LINE LINE label(x),line(x1,y1,x2,y2,id,x) LINE LINE 16

23 (line(x1,y1,x2,y2,id,x):- int(x1),int(y1),int(x2),int(y2),int(id) [[/*inline*/ Sample.control.addLine( me.getarg(0).getatom().tostring(), me.getarg(1).getatom().tostring(), me.getarg(2).getatom().tostring(), me.getarg(3).getatom().tostring(), me.getarg(4).getatom().tostring()); ]](X1,Y1,X2,Y2,ID),line(X1,Y1,X2,Y2,ID,X)) LINE LINE repaint paint(l1),{a(l1),line(x1,y1,x2,y2,id),$p, paintzumi(l2),{a(l2),$q, (paint(l1){a(l1),line(x1,y1,x2,y2,id), paintzumi(l2),{a(l2):- int(x1),int(y1),int(x2),int(y2),int(id) [[/*inline*/ Sample.control.addLine( me.getarg(0).getatom().tostring(), me.getarg(1).getatom().tostring(), me.getarg(2).getatom().tostring(), me.getarg(3).getatom().tostring(), me.getarg(4).getatom().tostring()); ]](X1,Y1,X2,Y2,ID), paint(l1){a(l1),$p, paintzumi(l2),{a(l2),line(x1,y1,x2,y2,id),$q) 3.8 addbutton 17

24 (copyint(s(x1),x2,x3,x4,x5):-copyint(x1,s(x2),s(x3),x4,x5)), (copyint(0,x2,x3,x4,x5):-x2=x4,x3=x5), (counter(s(x)):-copyint(x,0,0,x2,x3),counter(x2), addbutton(s(x3),id,label)), (counter(0):-()) button button(x):-addlistener(x) JAVA Java paintcomponent Graphics ID Graphics paintcomponent ID Java ID paint paintzumi paint paintzumi 18

25 3.9.3 Java paintcomponent Graphics line Java LMNtal LMNtal 19

26 x y x x y x [[/*inline_define*/ import java.util.*; import javax.swing.*; import javax.swing.uimanager; import java.awt.*; import java.awt.event.*; class Sample { public static Control control = new Control(); class Control { Object[] objects; int objectid; public Control(){ objects = new Object[100]; 20

27 objectid = 0; addpanel(); public String addpanel(){ LMNtalpanel g = new LMNtalpanel(); Frame lmntalframe = new LMNtalframe(g); objects[objectid] = g; objectid++; lmntalframe.show(); return Integer.toString(objectid-1); public void addline(string x1,string x2, String y1,string y2,string n){ Line line = new Line(Integer.parseInt(x1), Integer.parseInt(x2), Integer.parseInt(y1), Integer.parseInt(y2)); ((LMNtalpanel)objects[Integer.parseInt(n)]).addDraw(line); ((LMNtalpanel)objects[Integer.parseInt(n)]).repaint(); public void addatom(string x,string y,string s,string n){ Atomm atom = new Atomm( Integer.parseInt(x),Integer.parseInt(y),s); ((LMNtalpanel)objects[Integer.parseInt(n)]).addDraw(atom); ((LMNtalpanel)objects[Integer.parseInt(n)]).repaint(); public String addbutton(string a,string b){ JButton button = new JButton(a); ((LMNtalpanel)objects[Integer.parseInt(b)]).add(button); ((LMNtalpanel)objects[Integer.parseInt(b)]).repaint(); objects[objectid] = button; objectid++; return Integer.toString(objectid-1); public void resetdraw(string s){ ((LMNtalpanel)objects[Integer.parseInt(s)]).resetdraw(); public void addlistener(string id,abstractmembrane mem){ int j = Integer.parseInt(id); if(objects[j] instanceof JButton){ new ButtonListener((JButton)objects[j],mem); 21

28 class LMNtalframe extends JFrame{ LMNtalpanel g; public LMNtalframe(LMNtalpanel g1){ settitle( LMNtal ); setsize(200,200); g = g1; addwindowlistener(new WindowAdapter(){ public void windowclosing(windowevent E){ System.exit(0); ); Container contentpane = getcontentpane(); contentpane.add(g); class LMNtalpanel extends JPanel{ Draw ldraw,cdraw; public LMNtalpanel(){ public void paintcomponent(graphics g){ cdraw = ldraw; while(cdraw!= null){ cdraw.draw(g); cdraw = cdraw.ndraw; public void adddraw(draw draw){ draw.ndraw = ldraw; ldraw = draw; repaint(); public void resetdraw(){ ldraw = null; 22

29 class ButtonListener implements ActionListener{ AbstractMembrane mem; JButton button; String label; public ButtonListener(JButton button1,abstractmembrane mem1){ button = button1; label = button.gettext(); mem = mem1; button.addactionlistener(this); public void actionperformed(actionevent evt){ Functor f1 = new Functor( buttonevent,1); Functor f2 = new Functor(label,1); Atom a = mem.newatom(f1); Atom b = mem.newatom(f2); Link l1 = new Link(a,0); Link l2 = new Link(b,0); a.args[0] = l2; b.args[0] = l1; class Draw{ Draw ndraw; public void draw(graphics g){ class Line extends Draw{ int x1,x2,y1,y2; public Line(int xx1,int xx2,int yy1,int yy2){ x1 = xx1;x2 = xx2;y1 = yy1;y2 = yy2; public void draw(graphics g){ 23

30 g.drawline(x1,x2,y1,y2); class Atomm extends Draw{ int x,y; String s; public Atomm(int xx,int yy,string ss){ x = xx;y = yy;s = ss; public void draw(graphics g){ g.setcolor(color.black); g.filloval(x,y,30,30); g.setcolor(color.blue); g.filloval(x+2,y+2,26,26); g.setcolor(color.black); g.drawstring(s,x+10,y+18) ]], { sumzumi, (denntaku(l1),{a(l1),sumzumi,c(x), byouga(l2),{a(l2),$p :- int(x) denntaku(l1),{a(l1),c(x), byouga(l2),{a(l2),c(x),$p), (byouga(l1),{a(l1),int(x1),$p,c(x):- sum(x1,x2,x3),mul(x,10,0,x2),c(x3), mulzumi,byouga(l1),{a(l1),$p), (byouga(l1),{a(l1),$p,c(x),mulzumi:- int(x) byouga(l1),{a(l1),c(x),$p,c(x)), (byouga(l1),{a(l1),plus,$p, denntaku(l2),{a(l2),$q,c(x):- byouga(l1),{a(l1),$p, denntaku(l2),{a(l2),add(x),$q,c(0)), (sum(s(x1),x2,x3):-sum(x1,s(x2),x3)), 24

31 (sum(0,x2,x3):-x2 = X3,sumzumi), (mul(s(x1),x2,x3,x4),sumzumi:- mul(x1,x2,x5,x4),sum(x2,x3,x5)), (mul(0,x2,x3,x4),sumzumi:- X3 = X4,sumzumi), denntaku(l1),{a(l1), c(0), (add(x1),c(x2):-sum(x1,x2,x3),c(x3)), (sum(s(x1),x2,x3):-sum(x1,s(x2),x3)), (sum(0,x2,x3):-x2 = X3,sumzumi), byouga(l2), {a(l2), (line(x1,y1,x2,y2,id):-[[/*inline*/ Sample.control.addLine( me.getarg(0).getatom().tostring(), me.getarg(1).getatom().tostring(), me.getarg(2).getatom().tostring(), me.getarg(3).getatom().tostring(), me.getarg(4).getatom().tostring()); ]](X1,Y1,X2,Y2,ID)), (atom(x,y,l,id):-[[/*inline*/ Sample.control.addAtom( me.getarg(0).getatom().tostring(), me.getarg(1).getatom().tostring(), me.getarg(2).getatom().tostring(), me.getarg(3).getatom().tostring()); ]](X,Y,L,ID)), (addbutton(x,id,label):-[[/*inline*/ String s = Sample.control.addButton( me.getarg(0).getatom().tostring(), me.getarg(1).getatom().tostring()); Functor f1 = new Functor( me.getarg(2).getatom().tostring(),1); Functor f2 = new Functor(s,1); Atom a = me.getmem().newatom(f1); Atom b = me.getmem().newatom(f2); Link l1 = new Link(a,0); Link l2 = new Link(b,0); a.args[0] = l2; b.args[0] = l1; 25

32 ]](X,ID,LABEL)), (addlistener(x):-[[/*inline*/ Sample.control.addListener( me.getarg(0).getatom().tostring(),me.getmem()); ]](X)), (repaint(x):-[[/*inline*/ Sample.control.resetdraw( me.getarg(0).getatom().tostring()); ]](X),repaintzumi), (c(x):-repaint(0),c(x)), (c(x),repaintzumi:-addatom(50,100,x)), (buttonevent(x),+(x):-plus), (buttonevent(x):-int(x) int(x)), addbutton(1),addbutton(2),addbutton(3), addbutton(4),addbutton(5),addbutton(6), addbutton(7),addbutton(8),addbutton(9),addbutton(+) MVC denntaku model byouga control control byouga denntaku denntaku byouga denntaku denntaku c (sum(s(x1),x2,x3):-sum(x1,s(x2),x3)), (sum(0,x2,x3):-x2 = X3,sumzumi) sum X1,X2,X3 X1 X2 X3 26

33 X1 X2 sum X1 X2 X3 X3 sumuzumi denntaku add c sumzumi byouga byouga atom, line addbutton, addlistener byouga addbutton(1) addbutton(9) addbutton(+) byouga (buttonevent(x),+(x):-plus), (buttonevent(x):-int(x) int(x)) plus int (c(x):-repaint(0),c(x)), (c(x),repaintzumi:-addatom(50,100,x)) byouga c c control control c byouga int c byouga (byouga(l1),{a(l1),int(x1),$p,c(x):- sum(x1,x2,x3),mul(x,10,0,x2),c(x3), byouga(l1),{a(l1),$p), 27

34 (mul(s(x1),x2,x3,x4),sumzumi:- mul(x1,x2,x5,x4),sum(x2,x3,x5)), (mul(0,x2,x3,x4),sumzumi:- X3 = X4,sumzumi), X1,X2,X3,X4 X3 X1 X3 X2 X1 X1 X4 X3 byouga plus denntaku add (byouga(l1),{a(l1),plus,$p, denntaku(l2),{a(l2),$q,c(x):- byouga(l1),{a(l1),$p, denntaku(l2),{a(l2),add(x),$q,c(0)) denntaku sumzumi byouga (denntaku(l1),{a(l1),sumzumi,c(x), byouga(l2),{a(l2),$p :- int(x) denntaku(l1),{a(l1),c(x), byouga(l2),{a(l2),c(x),$p) GUI GUI 28

35 { sumzumi, (denntaku(l1),{a(l1),sumzumi,c(x), byouga(l2),{a(l2),$p :- int(x) denntaku(l1),{a(l1),c(x), byouga(l2),{a(l2),c(x),$p), (byouga(l1),{a(l1),int(x1),$p,c(x):- sum(x1,x2,x3),mul(x,10,0,x2),c(x3), byouga(l1),{a(l1),$p), (byouga(l1),{a(l1),plus,$p, denntaku(l2),{a(l2),$q,c(x):- byouga(l1),{a(l1),$p, denntaku(l2),{a(l2),add(x),$q,c(0)), (sum(s(x1),x2,x3):-sum(x1,s(x2),x3)), (sum(0,x2,x3):-x2 = X3,sumzumi), (mul(s(x1),x2,x3,x4),sumzumi:- mul(x1,x2,x5,x4),sum(x2,x3,x5)), (mul(0,x2,x3,x4),sumzumi:- X3 = X4,sumzumi), denntaku(l1),{a(l1), c(0), (add(x1),c(x2):-sum(x1,x2,x3),c(x3)), (sum(s(x1),x2,x3):-sum(x1,s(x2),x3)), (sum(0,x2,x3):-x2 = X3,sumzumi), byouga(l2), {a(l2), (c(x):-repaint(0),c(x)), (c(x),repaintzumi:-addatom(50,100,x)), (buttonevent(x),+(x):-plus), (buttonevent(x):-int(x) int(x)), addbutton(1),addbutton(2),addbutton(3), addbutton(4),addbutton(5),addbutton(6), addbutton(7),addbutton(8),addbutton(9),addbutton(+), c(0) 29

36 4.2 line(10,10,30,10),line(30,10,30,30),line(10,10,10,30), line(10,30,30,30),atom(30,30,a) 4.1: 4.3 LMNtal Java 30

37 class Bound{ int x1,y1; boolean xb,yb; public Bound(int xx,int yy){ x1 = xx; y1 = yy; public String[] next(string x2,string y2){ int x = Integer.parseInt(x2); int y = Integer.parseInt(y2); if(!xb){ x = x+5; if(x>x1)xb = true; else{ x = x-5; if(x<0)xb = false; if(!yb){ y = y+5; if(y>y1)yb = true; else{ y = y-5; if(y<0)yb = false; String[] s = new String[2]; s[0] = Integer.toString(x); s[1] = Integer.toString(y); return s; 31

38 (a(x,y):-[[/*inline*/string[] ss = Control.bound.next(me.nth(0),me.nth(1)); me.getarg(0).getatom().changename(ss[0]); me.getarg(1).getatom().changename(ss[1]); me.changename("az"); ]](X,Y)), (az(x,y):-[[/*inline*/sample.control.objects[0].resetdraw(); System.out.println("az"); Sample.control.addAtom(me.getArg(0).getAtom().toString(), me.getarg(1).getatom().tostring(), "1","0"); me.changename("a"); Thread.sleep(100); ]](X,Y)) 32

39 4.2: Boud 33

40 LMNtal sum 5.3 Runtime LMNtal 5.4 GUI 34

41 [1], : Programming with Logical Links, 19, [2] : Java LMNtal,,,2003. [3] : LMNtal Runtime Java,,,2003. [4] Cay S.Horstmann,Gary Cornell : CoreJAVA2 volume1, ASCII, [5] Sun,microsystems [6] Dennis Gannon, Randall Bramley, Geoffrey Fox, Shava Smallen, Al Rossi, Rachana Ananthakrishnan, Felipe Bertrand, Ken Chiu, Matt Farrellee, Madhu Govindaraju, Sriram Krishnan, Lavanya Ramakrishnan, Yogesh Simmhan, Alek Slominski, Yu Ma, Caroline Olariu, Nicolas Rey-Cenvaz : Programming the Grid: Distributed Software Components, P2P and Grid Web Services for Scientific Applications, /ProgGrid/ProgGridsHTML.htm 35

42 LMNtal LMNtal Java 36

43 A A.1 2 [[/*inline_define*/ import java.util.*; import javax.swing.*; import javax.swing.uimanager; import java.awt.*; import java.awt.event.*; class Sample { public static Control control = new Control(); class Control { Object[] objects; int objectid; public static Bound bound; public Control(){ objects = new Object[100]; objectid = 0; addpanel(); bound = new Bound(240,200); public String addpanel(){ LMNtalpanel g = new LMNtalpanel(); Frame lmntalframe = new LMNtalframe(g); objects[objectid] = g; objectid++; lmntalframe.show(); return Integer.toString(objectid-1); 37

44 public void addline(string x1,string x2, String y1,string y2,string n){ Line line = new Line( Integer.parseInt(x1),Integer.parseInt(x2), Integer.parseInt(y1),Integer.parseInt(y2)); ((LMNtalpanel)objects[Integer.parseInt(n)]).addDraw(line); ((LMNtalpanel)objects[Integer.parseInt(n)]).repaint(); public void addatom(string x,string y,string s,string n){ Atomm atom = new Atomm( Integer.parseInt(x),Integer.parseInt(y),s); ((LMNtalpanel)objects[Integer.parseInt(n)]).addDraw(atom); ((LMNtalpanel)objects[Integer.parseInt(n)]).repaint(); public String addbutton(string a,string b){ JButton button = new JButton(a); ((LMNtalpanel)objects[Integer.parseInt(b)]).add(button); ((LMNtalpanel)objects[Integer.parseInt(b)]).repaint(); objects[objectid] = button; objectid++; return Integer.toString(objectid-1); public void addlistener(string id,abstractmembrane mem){ class LMNtalframe extends JFrame{ LMNtalpanel g; public LMNtalframe(LMNtalpanel g1){ settitle("lmntal"); setsize(240,200); g = g1; addwindowlistener(new WindowAdapter(){ public void windowclosing(windowevent E){ System.exit(0); 38

45 ); Container contentpane = getcontentpane(); contentpane.add(g); class LMNtalpanel extends JPanel{ Draw ldraw,cdraw; public LMNtalpanel(){ public void paintcomponent(graphics g){ cdraw = ldraw; while(cdraw!= null){ cdraw.draw(g); cdraw = cdraw.ndraw; public void adddraw(draw draw){ draw.ndraw = ldraw; ldraw = draw; repaint(); public void resetdraw(){ ldraw = null; class ButtonListener implements ActionListener{ AbstractMembrane mem; JButton button; String label; public ButtonListener(JButton button1,abstractmembrane mem1){ button = button1; label = button.gettext(); mem = mem1; button.addactionlistener(this); public void actionperformed(actionevent evt){ Functor f1 = new Functor("buttonevent",1); 39

46 Functor f2 = new Functor(label,1); Atom a = mem.newatom(f1); Atom b = mem.newatom(f2); Link l1 = new Link(a,0); Link l2 = new Link(b,0); a.args[0] = l2; b.args[0] = l1; class Draw{ Draw ndraw; public void draw(graphics g){ class Line extends Draw{ int x1,x2,y1,y2; public Line(int xx1,int xx2,int yy1,int yy2){ x1 = xx1;x2 = xx2;y1 = yy1;y2 = yy2; public void draw(graphics g){ g.drawline(x1,x2,y1,y2); class Atomm extends Draw{ int x,y; String s; public Atomm(int xx,int yy,string ss){ x = xx;y = yy;s = ss; public void draw(graphics g){ g.setcolor(color.black); g.filloval(x,y,30,30); g.setcolor(color.blue); g.filloval(x+2,y+2,26,26); g.setcolor(color.black); g.drawstring(s,x+10,y+18); 40

47 ]], (line(x1,y1,x2,y2):-[[/*inline*/ Sample.control.addLine(me.getArg(0).getAtom().toString(), me.getarg(1).getatom().tostring(), me.getarg(2).getatom().tostring(), me.getarg(3).getatom().tostring(),"0"); ]](X1,Y1,X2,Y2)), (atom(x,y,l):-[[/*inline*/ Sample.control.addAtom(me.getArg(0).getAtom().toString(), me.getarg(1).getatom().tostring(), me.getarg(2).getatom().tostring(), "0"); ]](X,Y,L)), line(10,10,30,10),line(30,10,30,30),line(10,10,10,30),line(10,30,30,30), atom(30,30,a) A.2 3 [[/*inline_define*/ import java.util.*; import javax.swing.*; import javax.swing.uimanager; import java.awt.*; import java.awt.event.*; class Sample { public static Control control = new Control(); class Control { Object[] objects; int objectid; 41

48 public static Bound bound; public Control(){ objects = new Object[100]; objectid = 0; addpanel(); bound = new Bound(240,200); public String addpanel(){ LMNtalpanel g = new LMNtalpanel(); Frame lmntalframe = new LMNtalframe(g); objects[objectid] = g; objectid++; lmntalframe.show(); return Integer.toString(objectid-1); n){ public void addline(string x1,string x2,string y1,string y2,string Line line = new Line(Integer.parseInt(x1),Integer.parseInt(x2), Integer.parseInt(y1),Integer.parseInt(y2)); ((LMNtalpanel)objects[Integer.parseInt(n)]).addDraw(line); ((LMNtalpanel)objects[Integer.parseInt(n)]).repaint(); public void addatom(string x,string y,string s,string n){ Atomm atom = new Atomm(Integer.parseInt(x),Integer.parseInt(y),s); ((LMNtalpanel)objects[Integer.parseInt(n)]).addDraw(atom); ((LMNtalpanel)objects[Integer.parseInt(n)]).repaint(); public String addbutton(string a,string b){ JButton button = new JButton(a); ((LMNtalpanel)objects[Integer.parseInt(b)]).add(button); ((LMNtalpanel)objects[Integer.parseInt(b)]).repaint(); objects[objectid] = button; objectid++; return Integer.toString(objectid-1); public void addlistener(string id,abstractmembrane mem){ 42

49 class LMNtalframe extends JFrame{ LMNtalpanel g; public LMNtalframe(LMNtalpanel g1){ settitle("lmntal"); setsize(240,200); g = g1; addwindowlistener(new WindowAdapter(){ public void windowclosing(windowevent E){ System.exit(0); ); Container contentpane = getcontentpane(); contentpane.add(g); class LMNtalpanel extends JPanel{ Draw ldraw,cdraw; public LMNtalpanel(){ public void paintcomponent(graphics g){ cdraw = ldraw; while(cdraw!= null){ cdraw.draw(g); cdraw = cdraw.ndraw; public void adddraw(draw draw){ draw.ndraw = ldraw; ldraw = draw; repaint(); public void resetdraw(){ ldraw = null; 43

50 class ButtonListener implements ActionListener{ AbstractMembrane mem; JButton button; String label; public ButtonListener(JButton button1,abstractmembrane mem1){ button = button1; label = button.gettext(); mem = mem1; button.addactionlistener(this); public void actionperformed(actionevent evt){ Functor f1 = new Functor("buttonevent",1); Functor f2 = new Functor(label,1); Atom a = mem.newatom(f1); Atom b = mem.newatom(f2); Link l1 = new Link(a,0); Link l2 = new Link(b,0); a.args[0] = l2; b.args[0] = l1; class Draw{ Draw ndraw; public void draw(graphics g){ class Line extends Draw{ int x1,x2,y1,y2; public Line(int xx1,int xx2,int yy1,int yy2){ x1 = xx1;x2 = xx2;y1 = yy1;y2 = yy2; public void draw(graphics g){ g.drawline(x1,x2,y1,y2); class Atomm extends Draw{ int x,y; 44

51 String s; public Atomm(int xx,int yy,string ss){ x = xx;y = yy;s = ss; public void draw(graphics g){ g.setcolor(color.black); g.filloval(x,y,30,30); g.setcolor(color.blue); g.filloval(x+2,y+2,26,26); g.setcolor(color.black); g.drawstring(s,x+10,y+18); class Bound{ int x1,y1; boolean xb,yb; public Bound(int xx,int yy){ x1 = xx; y1 = yy; public String[] next(string x2,string y2){ int x = Integer.parseInt(x2); int y = Integer.parseInt(y2); if(!xb){ x = x+5; if(x>x1)xb = true; else{ x = x-5; if(x<0)xb = false; if(!yb){ y = y+5; if(y>y1)yb = true; else{ y = y-5; if(y<0)yb = false; String[] s = new String[2]; s[0] = Integer.toString(x); s[1] = Integer.toString(y); return s; 45

52 ]], (atom(x,y,l):-[[/*inline*/ Sample.control.addAtom(me.getArg(0).getAtom().toString(), me.getarg(1).getatom().tostring(), me.getarg(2).getatom().tostring(), "0"); ]](X,Y,L)), (a(x,y):-[[/*inline*/string[] ss = Control.bound.next(me.nth(0),me.nth(1)); me.getarg(0).getatom().changename(ss[0]); me.getarg(1).getatom().changename(ss[1]); me.changename("az"); ]](X,Y)), (az(x,y):-[[/*inline*/sample.control.objects[0].resetdraw(); System.out.println("az"); Sample.control.addAtom(me.getArg(0).getAtom().toString(), me.getarg(1).getatom().tostring(), "1","0"); me.changename("a"); Thread.sleep(100); ]](X,Y)), a(10,10) 46

Thread

Thread 14 2013 7 16 14.1....................................... 14 1 14.2 Thread................................... 14 1 14.3............................. 14 5 14.4....................................... 14 10

More information

I. (i) Foo public (A). javac Foo.java java Foo.class (C). javac Foo java Foo (ii)? (B). javac Foo.java java Foo (D). javac Foo java Foo.class (A). Jav

I. (i) Foo public (A). javac Foo.java java Foo.class (C). javac Foo java Foo (ii)? (B). javac Foo.java java Foo (D). javac Foo java Foo.class (A). Jav 2018 06 08 11:00 12:00 I. I III II. III. IV. ( a d) V. VI. 80 40 40 100 60 : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeylistener KE KeyEvent M MouseListener am addmouselistener

More information

r2.dvi

r2.dvi 2 /Fitzz 2012.10.16 1 Reading 1.1 HCI bit ( ) HCI ( ) ( ) ( ) HCI ( ) HCI ( ) ^_^; 1 1.2,,!,, 2000 1.3 D. A.,,?,, 1990 1? 1 (interface) ( ) ( / ) (User Interface, UI) 2 :? import java.awt.*; import java.awt.event.*;

More information

r2.dvi

r2.dvi 2002 2 2003.1.29 1 2.1-2.3 (1) (2) 2.4-2.6 (1)OO (2)OO / 2.7-2.10 (1)UML (2) Java 3.1-3.3 (1) (2)GoF (3)WebSphere (4) 3.4-3.5 3.6-3.9 Java (?) 2/12( ) 20:00 2 (2 ) 3 Java (?)1 java.awt.frame Frame 1 import

More information

Safari AppletViewer Web HTML Netscape Web Web 15-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web up

Safari AppletViewer Web HTML Netscape Web Web 15-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web up Safari AppletViewer Web HTML Netscape Web Web 15-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web update Event Driven paint Signature Overwriting Overriding

More information

text_13.dvi

text_13.dvi C 13 2000 7 9 13 Java(8) { Swing(2)(, ) 1 13.1 13 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1 13.2 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :

More information

Local variable x y i paint public class Sample extends Applet { public void paint( Graphics gc ) { int x, y;... int i=10 ; while ( i < 100 ) {... i +=

Local variable x y i paint public class Sample extends Applet { public void paint( Graphics gc ) { int x, y;... int i=10 ; while ( i < 100 ) {... i += Safari AppletViewer Web HTML Netscape Web Web 13-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web update Event Driven paint Signature Overwriting Overriding

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 11 回ウインドウ型アプリケーション (2) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp メニュー (1) メニューを組み込むときには,MenuBar オブジェクトに Menu オブジェクトを登録し, その Menu オブジェクトに MenuItem オブジェクトを登録する 2 つの Menu オブジェクト File New

More information

text_12.dvi

text_12.dvi C 12 2000 7 2 12 Java(7) { Swing(, ), 1 12.1 12 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1 12.2 Swing : : : : : : : : : : : : : : : : : : : : : : : : : : : : :

More information

6 p.1 6 Java GUI GUI paintcomponent GUI mouseclicked, keypressed, actionperformed mouseclicked paintcomponent thread, 1 GUI 6.0.2, mutlithread C

6 p.1 6 Java GUI GUI paintcomponent GUI mouseclicked, keypressed, actionperformed mouseclicked paintcomponent thread, 1 GUI 6.0.2, mutlithread C 6 p.1 6 Java GUI GUI paintcomponent GUI mouseclicked, keypressed, actionperformed mouseclicked paintcomponent 6.0.1 thread, 1 GUI 6.0.2, mutlithread CPU 1 CPU CPU +----+ +----+ +----+ Java 1 CPU 6 p.2

More information

r3.dvi

r3.dvi 10 3 2010.9.21 1 1) 1 ( 1) 1: 1) 1.0.1 : Java 1 import java.awt.*; import javax.swing.*; public class Sample21 extends JPanel { public void paintcomponent(graphics g) { g.setcolor(new Color(255, 180, 99));

More information

GUIプログラムⅣ

GUIプログラムⅣ GUI プログラム Ⅳ 画像指定ウィンドウの生成 ファイル名 :awtimage.java import java.awt.*; import java.awt.event.*; public class awtimage extends Frame // コンポーネントクラスの宣言 Button btnbrowse; Label lblcaption7; TextField txtimage; //

More information

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap 1-1 1-2 IE6 2 BMI 3-1 3-2 4 5 chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chapter8 : 13-1 13-2 14 15 PersonTest.java KazuateGame.java

More information

< F2D82518E9F8AD CC834F CC8CFC82AB82C68D4C>

< F2D82518E9F8AD CC834F CC8CFC82AB82C68D4C> 2 次関数のグラフの向きと広がり [Java アプレット ] [Java アプリケーション ] 1. はじめに 2 2 y=ax のグラフについて x の係数 aが正のときと負のときでは グラフにどのような違いがあるでしょうか 2 2 y=ax のグラフについて x の係数 aが正のとき 係数 aの値が大きくなるにつれて グラフの広がりはどうなるでしょうか 2 2 y=ax のグラフについて x の係数

More information

ÿþ˜u#u·0¹0Æ0à0

ÿþ˜u#u·0¹0Æ0à0 応用プログラミング - イベント処理 - イベント : プログラムへの働きかけ (GUI のボタンをクリックする, キーボードよりデータを入力するなど ) イベント処理 ( イベントハンドリング ): イベントに対する応答及びそのプログラム処理 イベントを処理するプログラムは イベントが発生した場合にのみ 呼び出される ( イベントドリブン ) GUI イベント イベント処理のプログラム イベント処理の仕組みと流れ

More information

問1

問1 2008/12/10 OOP 同演習小テスト問題 問 1. 次のプログラムの出力結果を a~d の中から選べ public class Problem1 { public static void main(string[] args){ int i =2; int j =3; System.out.println( i + j ); a) 23 b) 5 c) ij d) i+j 問 2. 次のプログラムの出力結果を

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下を入れること // vm12345 杉崎えり子 情報科学 B 第 14 回課題作成 3 情報科学 B Info2/3 info14 今日のフォルダー作成 情報科学 B 第 14 回課題作成 3 Report14_1.java 1 教科書 資料 過去のプログラムを見ながらで OK 課題 3( 提出 ) ボタンとアニメーション ( 第 13 回 ) を組み合わせて オリ ジナルのウィンドウを作成する

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下を入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウの作成をしたい

More information

r14.dvi

r14.dvi 2007 14 2008.1.29 1 1.1 (Ruby Java ) 1 (thread) 1 ( 1 ) main main 1: 1 ( 1 ) CPU CPU 1 while(true) { 0.1 0.1 GUI CPU 1 OS 1.2 Java Java Thread new start()? Thread 0 run() Thread run() run() start() Java

More information

< F2D BCA82CC978E89BA82CC8EC08CB12E6A7464>

< F2D BCA82CC978E89BA82CC8EC08CB12E6A7464> パチンコ玉の落下の実験 [Java アプレット ] [Java アプリケーション ] 1. はじめに 1 個のパチンコ玉が釘に当たって左右に分かれながら落下するとき パチンコ玉はどこに落下するのでしょうか ただし パチンコ玉が釘に当たって左右に分かれるとき その分かれ方は左右半々であるとします パチンコ玉が落下し易い場所はあるのでしょうか それとも どこの場所も同じなのでしょうか シミュレーションソフト

More information

データ構造とアルゴリズム論

データ構造とアルゴリズム論 15 12 2 (n-1)(n-2) n Fact(n) factorial Fact Fact(n) X XX*i X1 i:1,1,n Fact(n) AnsFact(n) Ans 123 15 12 2 6-8 void jbuttonkeisan actionperformed(actionevent e) { int Ans,n; n=integer.parseint(jtextfieldn.gettext())

More information

Microsoft PowerPoint - OOP.pptx

Microsoft PowerPoint - OOP.pptx 第 5 回 第 3 章継承 91 継承 ( インヘリタンス ): ウインドウシステムを例に説明 図 3.1: ウインドウの中にラベル, ボタン, リストの部品 各部品の属性と操作共通の属性と操作 ウインドウ内の左上を原点として (x, y) で場所指定 : 属性 (width, height) でサイズ指定 : 属性 識別のための名前 (name): 属性 置く位置の指定 (setlocation,

More information

< F2D E E6A7464>

< F2D E E6A7464> ピタゴラス数 [Java アプレット ] [Java アプリケーション ] 1. はじめに 2 2 2 三平方の定理 a +b =c を満たす3つの自然数の組 ( a, b, c) をピタゴラス数と言います ピタゴラス数の最も簡単な例として (3,4,5) がありますね このピタゴラス数を求めるには ピタゴラスの方法とプラトンの方法の2つの方法があります 2 2 ピタゴラス数 (a,b,c) に対して

More information

ガイダンス

ガイダンス プログラムの 1 行目に自分の名前を入れること // vm12345 杉崎えり子 情報科学 B 第 14 回課題作成 3 情報科学 B Info2/3 info14 今日のフォルダー作成 情報科学 B 第 14 回課題作成 3 Report14_1.java 1 教科書 資料 過去のプログラムを見ながらで OK 課題 3( 提出 ) ボタンとアニメーション ( 第 13 回 ) を組み合わせて オリ

More information

I. java.awt.rectangle java.lang.math random Java TM API java.awt Rectangle Rectangle (x,y)... public int x Rectangle X public int y Rectangle Y public

I. java.awt.rectangle java.lang.math random Java TM API java.awt Rectangle Rectangle (x,y)... public int x Rectangle X public int y Rectangle Y public 2018 08 03 10:30 12:00 I. IV III II. III. IV. ( a d) V. VI. 70 III 30 100 60 : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeylistener KE KeyEvent M MouseListener am addmouselistener

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下のように自分の入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウの作成をしたい

More information

Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem

Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem Java Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem 2 MenuComponent MenuComponent setfont() void setfont(font f) MenuBar MenuBar MenuBar() MenuBar add() Menu add(menu m) Menu Menu Menu String

More information

r4.dvi

r4.dvi 00 4 2000.6.24 0 GUI GUI GUI GUI 1 1.1 3 2 1 import java.applet.applet; import java.awt.*; public class r3ex2 extends Applet { Figure[] figs = new Figure[]{ new Circle(Color.blue, 100.0, 100.0, 30.0, 1.1,

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下のように自分の入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウを作成をしたい

More information

2 static final int DO NOTHING ON CLOSE static final int HIDE ON CLOSE static final int DISPOSE ON CLOSE static final int EXIT ON CLOSE void setvisible

2 static final int DO NOTHING ON CLOSE static final int HIDE ON CLOSE static final int DISPOSE ON CLOSE static final int EXIT ON CLOSE void setvisible 12 2013 7 2 12.1 GUI........................... 12 1 12.2............................... 12 4 12.3..................................... 12 7 12.4....................................... 12 9 12.5 : FreeCellPanel.java............................

More information

< F2D A838B838D96402E6A7464>

< F2D A838B838D96402E6A7464> モンテカルロ法 [Java アプレット ] [Java アプリケーション ] 1. はじめに 一辺の長さが 2 の正方形とそれに内接する半径 1 の円が紙に書かれています この紙の上からたくさんのゴマをばらまきます 正方形の中に入ったゴマの数と そのうちで円の中に入ったゴマの数も数えます さあ このゴマの数からどうやって円周率 π を求めるのでしょうか 一辺の長さ2の正方形の面積は4で

More information

:30 12:00 I. I V II. III. IV. ( a d) V. VI : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeyliste

:30 12:00 I. I V II. III. IV. ( a d) V. VI : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeyliste 2017 07 28 10:30 12:00 I. I V II. III. IV. ( a d) V. VI. 80 100 60 : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeylistener KE KeyEvent M MouseListener am addmouselistener

More information

< F2D F B834E2E6A7464>

< F2D F B834E2E6A7464> ランダムウォーク [Java アプレット ] [Java アプレリケーョン ] 1. はじめに 酔っぱらいは前後左右見境なくふらつきます 酔っぱらいは目的地にたどり着こうと歩き回っているうちに何度も同じところに戻って来てしまったりするものです 今 酔っぱらいが数直線上の原点にいるとします 原点を出発して30 回ふらつくとき 30 回目に酔っぱらいがいる位置は 出発点である原点からどれくらい離れてしまっているのでしょうか

More information

< F2D834F838C A815B A CC>

< F2D834F838C A815B A CC> グレゴリー ライプニッツの公式 [Java アプレット ] [Java アプリケーション ] 1. はじめに 次のグレゴリー ライプニッツの公式を用いて π の近似値を求めてみましょう [ グレゴリー ライプニッツの公式 ] π 4 =1-1 3 + 1 5-1 7 + 1 9-1 + 11 シミュレーションソフト グレゴリー ライプニッツの公式による π の近似 を使って π の近似値が求まる様子を観察してみてください

More information

< F2D82518E9F8AD CC95BD8D7388DA93AE2E6A7464>

< F2D82518E9F8AD CC95BD8D7388DA93AE2E6A7464> 2 次関数のグラフの平行移動 [Java アプレット ] [Java アプリケーション ] 1. はじめに 2 2 y=ax のグラフとy=a(x-b) +c のグラフは 位置は違うけれど 形も広がりも全く同じです 2 2 y=a(x-b) +c のグラフは y=ax のグラフをx 軸方向に ( 右方向に ) +b y 軸方向に ( 上方向に ) +c だけ平行移動したものです 2 シミュレーションソフト

More information

B 10 : N ip2003f10.tex B : 9/12/ :02 p.1/71

B 10 : N ip2003f10.tex B : 9/12/ :02 p.1/71 B 10 : ks91@sfc.wide.ad.jp N206 2003 ip2003f10.tex B : 9/12/2003 10:02 p.1/71 : / ip2003f10.tex B : 9/12/2003 10:02 p.2/71 ip2003f10.tex B : 9/12/2003 10:02 p.3/71 1 http://java.sun.com/j2se/1.4.1/docs/api/

More information

<4D F736F F F696E74202D AC C8899E D834F E >

<4D F736F F F696E74202D AC C8899E D834F E > Java 簡単な応用プログラム ( その 2) Java は すでにある部品群を上手く使ってプログラムを組み立てます 前回と同様に Frame を使って ウインドウを表示するプログラムを作りましょう. Frameは ウインドウを作るための部品で フレーム ( 枠 ) とタイトルおよび, 決められた仕組みが入っています. java.awt パッケージは, ウインドウ関連の部品が多くあります. javax.swing

More information

< F2D A839382CC906A2E6A7464>

< F2D A839382CC906A2E6A7464> ビュホンの針 1. はじめに [Java アプレット ] [Java アプリケーション ] ビュホン ( Buffon 1707-1788) は 針を投げて円周率 πを求めることを考えました 平面上に 幅 2aの間隔で 平行線を無数に引いておきます この平面上に長さ2bの針を落とすと この針が平行線と交わる確立 pは p=(2b) (aπ) 1 となります ただし b

More information

GUIプログラムⅤ

GUIプログラムⅤ GUI プログラム Ⅴ 前回課題の制作例 ファイル名 :awttest.java public class awttest public static void main(string arg[]) //=============================================== // ウィンドウ (Frame クラス ) のインスタンスを生成 //===============================================

More information

< F2D B825082CC96E291E82E6A7464>

< F2D B825082CC96E291E82E6A7464> 3x+1 の問題 [Java アプレット ] [Java アプリケーション ] 1. はじめに どんな自然数から始めても良いので その数が偶数ならば2で割り 奇数ならば3 倍して1を加えることを繰り返します そうすると どんな自然数から始めても必ず1になるというのはほんとうなのでしょうか 例えば 11から始めると 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 となります

More information

次の演習課題(1),(2)のプログラムを完成させよ

次の演習課題(1),(2)のプログラムを完成させよ 次の演習課題 (1),(2) のプログラムを作成せよ. 課題 (1) ボタン押下時の処理を追加し以下の実行結果となるようにプログラムを作成しなさい ( ボタン押下時の処理 ) import java.lang.*; class Figure extends JFrame implements ActionListener{ JPanel panel; JScrollPane scroll; JTextArea

More information

Java演習(9) -- クラスとメソッド --

Java演習(9)   -- クラスとメソッド -- Java (9) Java (9) Java (9) 3 (x, y) x 1 30 10 (0, 50) 1 2 10 10 (width - 10, 80) -2 3 50 10 (width / 2, 110) 2 width 3 (RectMove4-1.java) import javax.swing.japplet; import javax.swing.timer; import java.awt.graphics;

More information

< F2D82518CC282CC D2E6A7464>

< F2D82518CC282CC D2E6A7464> 2 個のさいころ 1. はじめに [Java アプレット ] [Java アプリケーション ] 2 個のさいころを同時に投げたときの目の出方を考えてみましょう この 2 個のさいころをそれぞれ さいころ Ⅰ さいころ Ⅱ とすると その目の出方は順に 1 1 2 1 3 1 4 1 5 1 6 1 1 2 2 2 3 2 4 2 5 2 6 2 1 3 2 3 3 3 4 3 5 3 6 3 1 4

More information

< F2D B838A835882CC8CF68EAE2E6A7464>

< F2D B838A835882CC8CF68EAE2E6A7464> ウォーリスの公式 [Java アプレット ] [Java アプリケーション ] 1. はじめに 次のウォーリスの公式を用いて π の近似値を求めてみましょう [ ウォーリスの公式 ] π=2{ 2 2 4 4 6 6 1 3 3 5 5 7 シミュレーションソフト ウォーリスの公式による π の近似 を使って π の近似値が求まる様子を観察してみてください 2.Java アプレット (1) Javaプログラムリスト

More information

< F2D89BA8EE882C E6A7464>

< F2D89BA8EE882C E6A7464> 下手な鉄砲も数撃ちゃ当たる!! [Java アプレット ] [Java アプリケーション ] 1. はじめに 鉄砲を10 回撃つと1 回当たる腕前の人が鉄砲を撃ちます 下枠の [ 自動 10 回 ] または [ 自動 50 回 ] または [ 自動 100 回 ] をクリックすると それぞれ10 回 50 回 100 回 実験を繰り返します ただし 1 回の実験につき20 発の鉄砲を発射します シミュレーションソフト

More information

I. (i) Java? (A). 2Apples (B). Vitamin-C (C). Peach21 (D). Pine_Apple (ii) Java? (A). Java (B). Java (C). Java (D). JavaScript Java JavaScript Java (i

I. (i) Java? (A). 2Apples (B). Vitamin-C (C). Peach21 (D). Pine_Apple (ii) Java? (A). Java (B). Java (C). Java (D). JavaScript Java JavaScript Java (i 12 7 27 10:30 12:00 I. I VI II. III. IV. ( a d) V. VI. 80 100 60 : this==null, T == N A ActionListener A addactionlistener C class D actionperformed E ActionEvent G getsource I implements J JApplet K KeyListener

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 10 回ウインドウ型アプリケーション (1) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 前回の課題 (1) ボーダーレイアウト, グリッドレイアウト, パネルを使用して, 電卓風のボタンを実現する BorderLayout で NORTH, CENTER, SOUTH に分割 NORTHにはテキストフィールドを設定 CENTERにはパネルを使って9つのボタンを設定

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション (1a) JAVA 言語の概要とインストール (1/2) JAVA 言語を使うメリットコンパイル 実行環境が無料であること OSや計算機に依存しないこと描画が簡単なこと参考書や情報ウェブサイトが豊富なこと文法やコマンドがC/C++ 言語に類似していること 科学技術計算から趣味 ゲームまで広範囲に利用可能 JAVAの種類 JAVA SE (JAVA Standard Edition): 他に EE (Enterprise

More information

< F2D825282CC947B909482CC A815B83682E6A>

< F2D825282CC947B909482CC A815B83682E6A> 3 の倍数のトランプカード 1. はじめに [Java アプレット ] [Java アプリケーション ] ここにトランプが 1 組あります ジョーカー 2 枚を除いて 52 枚を使います 3 の倍数は スペード クローバ ダイヤ ハートに それぞれ 3 と 6 と 9 と 12 の 4 枚ずつあるので 4 4=16 枚あります この 52 枚のトランプから 1 枚引いたとき そのカードが 3 の倍数である確率を考えます

More information

r3.dvi

r3.dvi 00 3 2000.6.10 0 Java ( 7 1 7 1 GSSM 1? 1 1.1 4 4a 4b / / 0 255 HTML X 0 255 16 (0,32,255 #0020FF Java xclock -bg #0020FF xclock ^C (Control C xclock 4c 1 import java.applet.applet; import java.awt.*;

More information

上達Java解答.doc

上達Java解答.doc //[1] (1) package kihonproj; import java.awt.*; import java.awt.event.*; import java.applet.*; import javax.swing.*; public class Sikakumenseki extends JApplet { // public void paint(graphics g){ int tate

More information

< F2D82B682E182F182AF82F12E6A7464>

< F2D82B682E182F182AF82F12E6A7464> 3 人のじゃんけん [Java アプレット ] [Java アプリケーション ] 1. はじめに A 君 B 君 C 君の 3 人でじゃんけんを 1 回するときの勝ち負けを考えてみましょう あいこの場合は A 君 B 君 C 君の順に グー グー グー チョキ チョキ チョキ パー パー パー グー チョキ パー グー パー チョキ チョキ グー パー チョキ パー グー パー グー チョキ パー

More information

PowerPoint Presentation

PowerPoint Presentation ソフトウェア演習 B GUI を持つ Java プログラムの 設計と実装 4.1 例題 :GUI を持った電卓を作ろう プロジェクトCalculator パッケージ名 :example ソースファイル : Calculator.java GUI.java EventProcessor.java 2 4.2 GUI とイベント処理 GUI の構成 :Swing GUI の場合 フレーム JFrame:

More information

< F2D92DE82E8914B82CC977088D32E6A7464>

< F2D92DE82E8914B82CC977088D32E6A7464> 釣り銭の用意の実験 [Java アプレット ] [Java アプリケーション ] 1. はじめに クラス会などの幹事を務めることはありませんか 幹事になったつもりで考えてみてください 仮に クラス会への参加者人数は 35 人で 会費は 3500 円であるとします また 参加者は 1000 円札 4 枚でお釣りを必要とする人と 1000 円札 3 枚と 500 円玉 1 個でお釣りの要らない人の 2

More information

2

2 問題 1 次の設問 1,2 に答えよ 設問 1 1 から 10 まで数えながら その数が偶数か奇数かを表示する JAVA プログラムの一部である 空欄に入るべき文字列は何か for( int i=1; 1 ; i++){ System.out.print(i); if( 2 == 0){ System.out.println(" is Even"); else{ System.out.println("

More information

Microsoft PowerPoint - prog13.ppt

Microsoft PowerPoint - prog13.ppt プログラミング言語 3 第 13 回 (2008 年 01 月 07 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/57 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2008 年 01 月 07 日分と書いてある部分が 本日の教材です

More information

5 p Point int Java p Point Point p; p = new Point(); Point instance, p Point int 2 Point Point p = new Point(); p.x = 1; p.y = 2;

5 p Point int Java p Point Point p; p = new Point(); Point instance, p Point int 2 Point Point p = new Point(); p.x = 1; p.y = 2; 5 p.1 5 JPanel (toy example) 5.1 2 extends : Object java.lang.object extends... extends Object Point.java 1 public class Point { // public int x; public int y; Point x y 5.1.1, 5 p.2 5 5.2 Point int Java

More information

I HTML HashMap (i) (ii) :.java import java.net.*; import java.io.*; import java.util.hashmap; public class SimpleStopWatch { public static voi

I HTML HashMap (i) (ii) :.java import java.net.*; import java.io.*; import java.util.hashmap; public class SimpleStopWatch { public static voi II Java 10 2 12 10:30 12:00 I. I III II. III. IV. ( a d) V. : this==null, T == N A ActionListener C class D actionperformed G getsource I implements K KeyListener J JApplet L addmouselistener M MouseListener

More information

B02-095 2007 2 15 1 3 2 4 2.1............................. 4 2.2........................................ 5 2.3........................................ 6 3 7 3.1................................. 7 3.2..............................

More information

Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 1

Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 1 Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 10, 30, 40 ); gc.setcolor( colors[ 3 ] ); operations[

More information

Assignment_.java /////////////////////////////////////////////////////////////////////// // 課題 星の画像がマウスカーソルを追従するコードを作成しなさい 次 ///////////////////

Assignment_.java /////////////////////////////////////////////////////////////////////// // 課題 星の画像がマウスカーソルを追従するコードを作成しなさい 次 /////////////////// Assignment_.java 0 0 0 0 0 /////////////////////////////////////////////////////////// // 課題 次のようにマウスのカーソルに同期しメッセージを /////////////////////////////////////////////////////////// class Assignment_ extends

More information

PowerPoint Presentation

PowerPoint Presentation 上級プログラミング 2( 第 3 回 ) 工学部情報工学科 木村昌臣 今日のテーマ GUI プログラミング入門 AWT Java で GUI を作る方法 (API) AWT Abstract Window Toolkit GUIをつくるクラス群を提供 ( 基本!) OSによらない外観 Swing 逆にいえば OS ネイティブな look and feel ではない AWT をもとに JavaFX JDK1.8

More information

public class Kadai _02 { public static void main(string[] args) { MyFrame frame = new MyFrame("Kadai _02"); (2) フレームのクラス名は MyFrame とし 以下

public class Kadai _02 { public static void main(string[] args) { MyFrame frame = new MyFrame(Kadai _02); (2) フレームのクラス名は MyFrame とし 以下 オブジェクト指向プログラミング演習課題 20071128 以下のような GUI 画面を表示するプログラムを完成させなさい 前回演習で作成したプログラムにイベント処理を追加します 注意 : ファイル名が同じものがあるので 課題毎にディレクトリーを分ける等してください 課題 20071128_01 講義資料内で紹介したイベント処理の例 2 を作成し 動作を確認せよ (1) コントロールクラス (main

More information

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperforme

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperforme 2014 8 01 10:30 12:00 I. I VII II. III. IV. ( a d) V. VI. 80 100 60 : this==null, T == N A ActionListener A addactionlistener C class D actionperformed E ActionEvent G getsource I implements J JApplet

More information

55 7 Java C Java TCP/IP TCP/IP TCP TCP_RO.java import java.net.*; import java.io.*; public class TCP_RO { public static void main(string[] a

55 7 Java C Java TCP/IP TCP/IP TCP TCP_RO.java import java.net.*; import java.io.*; public class TCP_RO { public static void main(string[] a 55 7 Java C Java TCP/IP TCP/IP 7.1 7.1.1 TCP TCP_RO.java import java.net.*; import java.io.*; public class TCP_RO { public static void main(string[] argv) { Socket readsocket = new Socket(argv[0], Integer.parseInt(argv[1]));

More information

Microsoft PowerPoint - prog13.ppt

Microsoft PowerPoint - prog13.ppt プログラミング言語 3 第 13 回 (2008 年 01 月 07 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/57 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2008 年 01 月 07 日分と書いてある部分が 本日の教材です

More information

< F2D8EA CE909482CC92EA82852E6A7464>

< F2D8EA CE909482CC92EA82852E6A7464> 自然対数の底 e [Java アプレット ] [Java アプリケーション ] 1. はじめに 対数は 17 世紀にネイピアやビュルギといった数学者たちが生み出した関数である 円周率 πと自然対数の底 eとは密接な関係があり どちらも無理数で超越数 ( 整数係数の代数方程式の解にならない実数 ) である 1737 年 オイラーは eが無理数であることを示した 1873 年 フランスの数学者エルミートは

More information

untitled

untitled Java 1 1 Java 1.1 Java 1.2 Java JavaScript 2 2.1 2.2 2.3 Java VM 3 3.1 3.2 3.3 3.4 4 Java 4.1 Java 4.2 if else 4.3 switch case 4.4 for 4.5 while 4.6 do-while 4.7 break, continue, return 4.8 try-catch-finally

More information

r14.dvi

r14.dvi 2008 14 2009.1.30 3e/3f paint (0 n rn() ) 1 / import java.awt.*; import javax.swing.*; public class ex33ef extends JFrame { public ex33ef() { setdefaultcloseoperation(exit_on_close); setpreferredsize(new

More information

目 次 Java GUI 3 1 概要 クラス構成 ソースコード例 課題...7 i

目 次 Java GUI 3 1 概要 クラス構成 ソースコード例 課題...7 i Java GUI 3 Java GUI 3 - サンプルプログラム (1) - 2011-09-25 Version 1.00 K. Yanai 目 次 Java GUI 3 1 概要...1 2 クラス構成...2 3 ソースコード例...3 4 課題...7 i 1 概要まずは簡単なサンプルプログラムをみながら Java GUI の基本的なことを学びましょう 本サンプルは 図に示すようなひとつのメイン画面を使用します

More information

r8.dvi

r8.dvi I 2005 8 2005.12.9 GUI GUI ( ) GUI try... catch 1 1.1 2 1 2 paint() run() 1 Y 1 2 sin/cos 2 2 Color.getHSBColor() ( Circle setpaint() getpaint() ) import java.awt.*; import javax.swing.*; public class

More information

Java 3 p.2 3 Java : boolean Graphics draw3drect fill3drect C int C OK while (1) int boolean switch case C Calendar java.util.calendar A

Java 3 p.2 3 Java : boolean Graphics draw3drect fill3drect C int C OK while (1) int boolean switch case C Calendar java.util.calendar A Java 3 p.1 3 Java Java if for while C 3.1 if Java if C if if ( ) 1 if ( ) 1 else 2 1 1 2 2 1, 2 { Q 3.1.1 1. int n = 2; if (n

More information

II Java :30 12:00 I. I IV II. III. IV. ( a d) V. : this==null, T == N A ActionListener C class D actionperformed G getsource I implements K

II Java :30 12:00 I. I IV II. III. IV. ( a d) V. : this==null, T == N A ActionListener C class D actionperformed G getsource I implements K II Java 09 2 13 10:30 12:00 I. I IV II. III. IV. ( a d) V. : this==null, T == N A ActionListener C class D actionperformed G getsource I implements K KeyListener J JApplet L addmouselistener M MouseListener

More information

awt の主要なクラスを下記に示す クラス Component Container Button Label Panel Frame 説明画面にユーザインターフェイス要素として表示し, ユーザとのやり取りを行うコンポーネントを表すすべてのコンポーネントのスーパークラスになる ほかのコンポーネントを含

awt の主要なクラスを下記に示す クラス Component Container Button Label Panel Frame 説明画面にユーザインターフェイス要素として表示し, ユーザとのやり取りを行うコンポーネントを表すすべてのコンポーネントのスーパークラスになる ほかのコンポーネントを含 第 3 章 GUI による電卓の実装 GUI の基礎とイベント処理について理解し, 前章で作成した演算プログラムを組み込んで電卓を作成 ( 実装 ) する 3.1 インターフェイス 文字などのコマンドだけでやりとりするインターフェイスを CUI(Command User Interface) と呼び, マウスなどでウインドウを操作して行うインターフェイスを GUI(Graphical User Interface)

More information

/ ( ) 8/7/2003 13:21 p.2/64

/ ( ) 8/7/2003 13:21 p.2/64 B 12 I ks91@sfc.wide.ad.jp N208 8/7/2003 13:21 p.1/64 / ( ) 8/7/2003 13:21 p.2/64 8/7/2003 13:21 p.3/64 2! 12 7/ 8 1 13 7/15 2 / ( ) 11 (SFC ) ( 5 ) 8/7/2003 13:21 p.4/64 10 2003/7/22 23:59 JST 11 ( )

More information

GUIプログラムⅡ

GUIプログラムⅡ GUI プログラム Ⅱ 前回課題の制作例 ファイル名 :awtsave.java import java.awt.*; import java.awt.event.*; public class awtsave extends Frame // Button クラスの宣言 Button btnsave; Label lblcaption1, lblcaption2, lblcaption3; Label

More information

Java演習(4) -- 変数と型 --

Java演習(4)   -- 変数と型 -- 50 20 20 5 (20, 20) O 50 100 150 200 250 300 350 x (reserved 50 100 y 50 20 20 5 (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics; (reserved public class Blocks1 extends

More information

アプレットの作成

アプレットの作成 - 1 - import java.applet.applet; import java.awt.graphics; public class HelloWorld extends Applet { public void init() { resize(150,60) ; public void paint ( Graphics g ) { g.drawstring("hello, world!",

More information

CONTENTS 0 1 2 3 4 5 6 7 8 9 10 0 Java10 BaseFrame.java 1 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class BaseFrame extends JFrame { public BaseFrame(String title) { super(title);

More information

Construction of a Scheme & a Java Application for Confirmation of Graduate Requirements HARIMOTO, Hiroshi The aim of the paper is to construct a scheme and a Java application for the senior students of

More information

I 4 p.2 4 GUI java.awt.event.* import /* 1 */ import mouseclicked MouseListener implement /* 2 */ init addmouselistener(this) this /* 3 */ this mousec

I 4 p.2 4 GUI java.awt.event.* import /* 1 */ import mouseclicked MouseListener implement /* 2 */ init addmouselistener(this) this /* 3 */ this mousec I 4 p.1 4 GUI GUI GUI 4.1 4.1.1 MouseTest.java /* 1 */ public class MouseTest extends JApplet implements MouseListener /* 2 */ { int x=50, y=20; addmouselistener(this); /* 3 */ public void mouseclicked(mouseevent

More information

Microsoft Word - Java4.DOC

Microsoft Word - Java4.DOC Java 入門 ( 6) 科名 T u t o r i a l g r o u p 氏 名 2005.2 1 テキストフィールド (TextField) テキストフィールド (TextField) は 1 行だけの編集可能な文字列を表示 / 入力するためのコンポーネントである テキストフィールドは TextComponent を継承している 例題 1 P326password.java テキスト P325~P326

More information

アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2

アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2 UML によるソフトウェア設計 Java プログラミング 2 1 アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2 1. グラフィカルなインタフェース ウィンドウの作成手順 1. ウィンドウ ( フレーム ) を作成する JFrame frame = new JFrame(); 2.

More information

. IDE JIVE[1][] Eclipse Java ( 1) Java Platform Debugger Architecture [5] 3. Eclipse GUI JIVE 3.1 Eclipse ( ) 1 JIVE Java [3] IDE c 016 Information Pr

. IDE JIVE[1][] Eclipse Java ( 1) Java Platform Debugger Architecture [5] 3. Eclipse GUI JIVE 3.1 Eclipse ( ) 1 JIVE Java [3] IDE c 016 Information Pr Eclipse 1,a) 1,b) 1,c) ( IDE) IDE Graphical User Interface( GUI) GUI GUI IDE View Eclipse Development of Eclipse Plug-in to present an Object Diagram to Debug Environment Kubota Yoshihiko 1,a) Yamazaki

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 8 回ウインドウ部品を用いる (1) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 前回の課題 (1) マウスを使って, 前回課題で作成した 6 4 のマスの図形で, \ をマウスクリックによって代わるようにしなさい 前回の課題 (2) import java.applet.applet; import java.awt.*;

More information

try catch Exception Java try catch try { } catch ( Exception e ) { } e 16-1 try catch 0 try { int x = 0; int y = 10 / x; } catch ( Exception e ) { Sys

try catch Exception Java try catch try { } catch ( Exception e ) { } e 16-1 try catch 0 try { int x = 0; int y = 10 / x; } catch ( Exception e ) { Sys try catch Exception Java try catch catch ( Exception e ) { e 16-1 try catch 0 int x = 0; int y = 10 / x; catch ( Exception e ) { System.err.println( " " ); Copyright by Tatsuo Minohara 2004 Rev. C on Dec.

More information

KeyListener init addkeylistener addactionlistener addkeylistener addkeylistener( this ); this.addkeylistener( this ); KeyListener public void keytyped

KeyListener init addkeylistener addactionlistener addkeylistener addkeylistener( this ); this.addkeylistener( this ); KeyListener public void keytyped KeyListener keypressed(keyevent e) keyreleased(keyevent e) keytyped(keyevent e) MouseListener mouseclicked(mouseevent e) mousepressed(mouseevent e) mousereleased(mouseevent e) mouseentered(mouseevent e)

More information

public class MyFrame { private JPanel panel1; private JPanel panel2; private JPanel panel3; private JPanel panel4; private JLabel label1; private JTex

public class MyFrame { private JPanel panel1; private JPanel panel2; private JPanel panel3; private JPanel panel4; private JLabel label1; private JTex ソフトウェア基礎演習課題 20061206 以下のような GUI 画面を表示するプログラムを完成させなさい 前回演習で作成したプログラムにイベント処理を追加します 注意 : ファイル名が同じものがあるので 課題毎にディレクトリーを分ける等してください ( 簡易レジスター ) 概略仕様 : 1. フレーム内にはパネルが4つあり レイアウトは GridLayout(4, 1)(4 行 1 列のレイアウト

More information

15 Java 15.5 15.6 15.7 Checkbox() Checkbox(String str) Checkbox(String str, boolean state) Checkbox(String str, boolean state, CheckboxGroup grp) Checkbox(String str, CheckboxGroup grp, boolean state)

More information

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM IDESun Microsystems Oracle NetBeans, IBM 1 Eclipse 2, JetBrains IntelliJ IDEA IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 GUI

More information

Java 2 - Lesson01

Java 2 - Lesson01 Java2 第 4 回 高度な GUI デザインの作成 キーポイント FocusListener の作成 Exercise 3 and 4 今まで学んだ機能を組み合わせて 高度なデザインの GUI を作成します レイアウトやイベントの作成については各自で考えて 工夫して下さい 作成する GUI の動作を確認したい場合は Java2 コースの Web ページ上にある jar ファイルをダウンロード 起動して動作を確認して下さい

More information

Java 2 - Lesson01

Java 2 - Lesson01 第 2 回 GUI コンポーネントのイベント処理 GUI Component Event Handling キーポイント イベント イベントリスナー イベント処理とは何か? ActionEventとActionListenerについて ItemEventとItemListenerについて TextEventとTextListenerについて KeyEventとKeyListenerについて AdjustmentEventとadjustmentListenerについて

More information

Microsoft PowerPoint - prog12.ppt

Microsoft PowerPoint - prog12.ppt プログラミング言語 3 第 12 回 (2007 年 12 月 17 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/57 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 17 日分と書いてある部分が 本日の教材です

More information

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF pref : 2004/6/5 (11:8) pref : 2004/6/5 (11:8) pref : 2004/6/5 (11:8) 3 5 14 18 21 23 23 24 28 29 29 31 32 34 35 35 36 38 40 44 44 45 46 49 49 50 pref : 2004/6/5 (11:8) 50 51 52 54 55 56 57 58 59 60 61

More information

Prog1_12th

Prog1_12th 2014 年 7 月 3 日 ( 木 ) 実施 GUIプログラミング今回の授業では,Java 言語での GUI(Graphical User Interface) プログラミングの基礎について学習する GUIツールキット Java 言語では,GUI プログラミング用のツールキットとして, 次のものが用意されている 1) AWT(Abstract Window Toolkit) 2) Swing AWT

More information

Java 2 - Lesson01

Java 2 - Lesson01 第 3 回 複雑なレイアウトのイベント処理 画像 データの読込み テーブルの使用 キーポイント レイアウトについて 前回までのレイアウト レイアウトの補足機能 固定座標を用いたレイアウト Grid Layout CardLayout について Card Layout Card Layout による複数ページ表示 ファイルの読み込み JFileChooser クラス java.awt.filedialog

More information

Microsoft PowerPoint - prog11.ppt

Microsoft PowerPoint - prog11.ppt プログラミング言語 3 第 11 回 (2007 年 12 月 10 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/57 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 10 日分と書いてある部分が 本日の教材です

More information

GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ

GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ 2-2 手書認識認識結果 ( 数式 ) を描画する ステップ 3 認識した数式を元に関数グラフを描画する

More information

データ構造とアルゴリズム論

データ構造とアルゴリズム論 15 11 11 Java 21 231-0811 32 152-0033 1 Java 3-5,55,63,39,87,48,70,35,77,59,44 3-5 3-7 score2.txt 75 15 11 11 5-1 3-7 jbuttonread jbuttondisplay jlabelmessage jtextfieldname jtextfieldtokuten

More information

class IntCell { private int value ; int getvalue() {return value; private IntCell next; IntCell next() {return next; IntCell(int value) {this.value =

class IntCell { private int value ; int getvalue() {return value; private IntCell next; IntCell next() {return next; IntCell(int value) {this.value = Part2-1-3 Java (*) (*).class Java public static final 1 class IntCell { private int value ; int getvalue() {return value; private IntCell next; IntCell next() {return next; IntCell(int value) {this.value

More information