Jendela
adalah daerah yang aktif sebagai output pada layar yang dapat dibatasi dengan
bingkai (frame). Jika kita membuat jendela lain maka jendela terakhirlah yang
aktif, namun jika menghendaki maka pengaktifan jendela lain dapat kita pilih.
Apabila ada jendela, predikat yang berkaitan dengan keluaran pada layar,
mengacu pada koordinat jendela. Misalnya kita menempatkan kursor pada koordinat
(5,6) maka berarti 5 baris ke bawah dan 6 kolom ke kanan dari titik kiri atas
jendela.
Predikat Jendela
Untuk dapat menangani jendela, kita perlu predikat jadi
sebagai berikut :
a.
Makewindow
Makewindow untuk membuat
jendela pada layar dengan format :
makewindow(No,AtrL,AtrF,Judul,Baris,Kolom,Tinggi,Lebar)
- No : untuk nomor dari jendela
- AtrL : mengambil nilai atribut di dalam jendela
- AtrF : membaca nilai atribut bingkai
- Judul : menuliskan judul pada bingkai jendela
- Baris, Kolom : menentukan koordinat pada bingkai
jendela
- Tinggi, Lebar : menentukan ukuran jendela
b.
Shiftwindow
Untuk berpindah jendela, karena
hanya 1 jendela yang aktif. Formatnya
:
shifwindow(NoJendela)
c.
Clearwindow
Untuk membersihkan jendela
d.
Removewindow
Untuk menghapus jendela yang
aktif tanpa meninggalkan bekas.
e.
Cursor
Untuk menempatkan kursor.
cursor(Baris,Kolom)
Contoh program :
predicates
parent(symbol,symbol)
female(symbol)
male(symbol)
offspring(symbol,symbol)
mother(symbol,symbol)
grandfather(symbol,symbol)
sister(symbol,symbol)
different(symbol,symbol)
grandchild(symbol,symbol)
aunt(symbol,symbol)
predecessor(symbol,symbol)
pilihan(integer)
menu
start
clauses
parent(pam,bob).
parent(tom,bob).
parent(tom,liz).
parent(bob,ann).
parent(bob,pat).
parent(pat,jim).
female(pam).
female(liz).
female(pat).
female(ann).
male(tom).
male(bob).
male(jim).
offspring(Y,X) :-
parent(X,Y).
mother(X,Y) :-
female(X),
parent(X,Y).
grandfather(X,Z) :-
parent(X,Y),
parent(Y,Z).
different(X,Y) :- X<>Y.
sister(X,Y) :-
parent(Z,X),
parent(Z,Y),
female(X),
different(X,Y).
grandchild(X,Z) :-
parent(Y,X),
parent(Z,Y).
aunt(X,Y) :-
parent(Z,Y),
sister(X,Z).
predecessor(X,Z) :-
parent(X,Z).
predecessor(X,Z) :-
parent(X,Y),
predecessor(Y,Z).
start:-
clearwindow,
makewindow(1,40,10,"",0,0,25,80),
field_attr(22,61,14,29),
field_str(22,61,14," (TEKAN
TOMBOL) "),
makewindow(2,32,150,"",6,20,15,40),nl,nl,
write(" PROGRAM SISILAH KELUARGA \n"),
nl,nl,
write(" 2009 \n"),readchar(_),clearwindow.
menu :-
shiftwindow(3),
makewindow(2,27,110,"",5,10,15,60),
write(" Apa yang ingin anda ketahui ?
"),nl,nl,nl,
write("1. Orang tua
"),nl,
write("2. Anak "),nl,
write("3. Cucu "),nl,
write("4. Bibi
"),nl,nl,
write(" Masukkan pilihan
anda : "),
readint(Pilihan),
pilihan(Pilihan),menu.
pilihan(1):-
clearwindow,
makewindow(4,30,150," ORANG
TUA ",0,0,25,80),
write("Orang tua dari siapa
? "),readln(X),
parent(Y,X),write (" Orang
tua dari ",X, " adalah ",Y),nl,fail.
pilihan(2):-
clearwindow,
makewindow(4,38,180," ANAK
",0,0,25,80),
write("Anak dari siapa ?
"),readln(X),
parent(X,Y),write ("
Anak dari ",X, " adalah
",Y),nl,fail.
pilihan(3):-
clearwindow,
makewindow(4,20,130," CUCU
",0,0,25,80),
write("Cucu dari siapa ?
"),readln(X),
grandfather(X,Y),write ("
Cucu dari ",X, " adalah
",Y),nl,fail.
pilihan(4):-
clearwindow,
makewindow(4,25,60," BIBI
",0,0,25,80),
write("Bibi dari siapa ?
"),readln(X),
aunt(Y,X),write ("
Bibi dari ",X, " adalah
",Y),nl,fail.
Goal
start,makewindow(3,24,67,"",0,0,25,80),menu.
Download Disini
Predikat Jendela (Window) >>>>> Download Now
ReplyDelete>>>>> Download Full
Predikat Jendela (Window) >>>>> Download LINK
>>>>> Download Now
Predikat Jendela (Window) >>>>> Download Full
>>>>> Download LINK