Ar an leathanach roimhe seo chonaiceamar conas an
Tá 3 saghas
Is é an cnaipe luiche chlé atá i gceist i gcónaí ar an leathanach seo, ní úsáidtear an cnaipe deas.
Tá 3 ghníomh difriúla ag Setanta chun éisteacht leis na teagmhais sin. Oibríonn na gníomhartha sin mar a oibríonn an gníomh méarchlár
a chonaiceamar cheana.
Inár ríomhchlár éistfimid le haghaidh an teagmhas “luch síos” chun líne nua a thosú, ansin éistfimid le haghaidh “bogadh luiche” chun
Anois cruthaímis 3 ghníomh nua: éist_síos
, éist_suas
agus éist_bog
. Níos déanaí athróimid an ríomhchlár ionas go glaofar ar éist_síos
nuair a tharlaíonn an teagmhas “luch síos”, glaofar ar éist_suas
nuair a tharlaíonn an teagmhas “luch suas” agus éist_bog
nuair a tharlaíonn an teagmhas “bogadh luiche”.
Glacann gach ceann le 2 argóint: x
agus y
. Beidh
gníomh éist_síos(x, y) {
>-- Cód le dhéanamh nuair a chliceálann an usáideoir an luch
}
gníomh éist_suas(x, y) {
>-- Cód le dhéanamh nuair a scaoileann an úsáideoir an luch.
}
gníomh éist_bog(x, y) {
>-- Cód le dhéanamh nuair a bhogann an luch.
}
Chun na gníomhartha seo a luch@stáitse
, luch_suas@stáitse
agus luch_bog@stáitse
a úsáid. Ba chóir dúinn glaoch ar na gníomhartha sin lenár gníomhartha éist_síos
, éist_suas
agus éist_bog
chun an nasc a chruthú (díreach mar a rinneamar leis an gníomh méarchlár
).
gníomh éist_síos(x, y) {
>-- Cód le dhéanamh nuair a chliceálann an usáideoir an luch
}
gníomh éist_suas(x, y) {
>-- Cód le dhéanamh nuair a scaoileann an úsáideoir an luch.
}
gníomh éist_bog(x, y) {
>-- Cód le dhéanamh nuair a bhogann an luch.
}
luch@stáitse(éist_síos)
luch_suas@stáitse(éist_suas)
luch_bog@stáitse(éist_bog)
Chun éist_síos
chun ciorcal a tharraingt ar an stáitse nuair a cliceáiltear an luch ar an stáitse. Tá an x agus y comhordanáid ar fáil sa ghníomh éist_síos
, mar sin bainfimid úsáid astu le haghaidh lár an ciorcail.
Bain triail as:
Níor tharla aon rud! Cén fáth?
Féach go cúramach ar an cnaipe
Ní athraíonn sé go cnaipe
éist_síos
an chead rud a léann sé. Dá bhrí sin cruthaíonn sé an gníomh agus cuireann sé é san athróg éist_síos
.éist_suas
agus an gníomh éist_bog
.luch@stáitse(éist_síos)
an chéad líne eile a léann sé, dá bhrí sin nascann sé an gníomh éist_síos
leis an teagmhas “luch síos”.éist_suas
agus éist_bog
leis an luch freisin.Sin cúis an
Ba mhaith linn an ríomhchlár a choimeád ag rith go dtí go brúnn an úsáideoir an cnaipe fan
a úsáid chun é sin a dhéanamh. Nuair a ritheann Setanta an gníomh fan
, fanann sé go dtí go codladh
le méid ama an-mhór (nó méid
Cuirimis fan()
ag deireadh ár ríomhchlár agus bainimis triail as arís:
Oibríonn sé anois!
Anois ba chóir dúinn smaoineamh faoi conas is féidir linn seic a dhéanamh an bhfuil an luch brúite? Ba mhaith linn líne a tharraingt nuair atá sé brúite, agus níor mhaith linn mura bhfuil.
Is féidir linn na teagmhais “luch síos” agus “luch suas” a úsáid chun an
Cruthaímis athróg nua brúite
ag barr an ríomhchláir leis an luach bréag
. Nuair a ghlaoitear ar eist_síos
ba chóir dúinn an luach a athrú go fíor
mar anois tá an luch brúite, agus nuair a ghlaoitear ar éist_suas
ba chóir dúinn é a athrú go bréag
mar níl sé brúite a thuilleadh.
brúite := bréag
gníomh éist_síos(x, y) {
brúite = fíor
}
gníomh éist_suas(x, y) {
brúite = bréag
}
gníomh éist_bog(x, y) {
>-- Cód le dhéanamh nuair a bhogann an luch.
}
luch@stáitse(éist_síos)
luch_suas@stáitse(éist_suas)
luch_bog@stáitse(éist_bog)
fan()
Anois cuirimis éist_bog
chun ciorcal a tharraingt nuair a bhogann an luch agus é brúite chun tástáil a dhéanamh ar ár gcód.
Nuair a ghlaoitear ar éist_bog
tá x
agus y
cothrom le áit nua na luiche.
Anois seo é éist_bog
:
Bain triail as! Rith an ríomhchlár, coimeád do luch síos agus bog timpeall na stáitse é.
Is aoibhinn liom na ciorcail, ach ní hiad atá uainn. Anois ba chóir dúinn línte a tharraingt in ionad na ciorcail.
Nuair a bhogann an luch agus glaoitear ar éist_bog
is é x
agus y
an áit nua. Áfach, chun líne a tharraingt is gá dúinn
Cruthaímis 2 athróg nua chun an sean x-comhordanáid agus an sean y-comhordanáid a stóráil, tugaimid x_roimhe
agus y_roimhe
orthu. Cuirimis na línte seo ag barr an ríomhchlár:
Gach uair a bhogann an luch (agus é brúite) tarraingeoimid líne ón sean áit ((x_roimhe, y_roimhe)
) go dtí an áit nua ((x, y)
), ansin cuirfimid an áit nua sna hathróga x_roimhe
agus y_roimhe
chun iad a stóráil go dtí an céad teagmhas “bogadh luiche” eile. Chun an líne a tharraingt, bainfimid úsáid as an gníomh líne@stáitse
chun an líne a tharraingt. Glacann sé le 4 argóint: Is é an líne@stáitse(x_roimhe, y_roimhe, x, y)
chun líne a tharraingt ón sean áit go dtí an áit nua.
Anois seo é ár gníomh éist_bog
:
gníomh éist_bog(x, y) {
má brúite {
líne@stáitse(x_roimhe, y_roimhe, x, y)
}
x_roimhe = x
y_roimhe = y
}
Bain triail as!: