return instance;
}
public void display!)
{
Display. getDisplay(this). setCurrent(textBox);
}
public void commandAction(Command c, Displayable d)
if (c == quit)
{
quit();
}
}
}
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΠΈΠ· ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°, ΡΡΠΎ TextBox ΡΡ ΠΎΠ΄Π΅Π½ Ρ TextField, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ½ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΡΡΡΠΎΡΠ½ΠΎΠΉ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΡΡ. ΠΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΊΡΡ, ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π½Π°ΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ, ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π²Π²ΠΎΠ΄Π°. ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΠ²Π»ΡΡΡΡΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΡΠ΅ΠΌΠΈ ΠΆΠ΅, ΡΡΠΎ ΠΈ Π² ΠΊΠ»Π°ΡΡΠ΅ TextField.
ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅ 5.11 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΊΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° TextBox. ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°ΡΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ΅ΠΌΡΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ, Π²Ρ ΠΏΡΠΎΡΡΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΠ΅ TextBox Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π²ΡΠ±ΠΎΡΠ° Select ΡΠΌΡΠ»ΡΡΠΎΡΠ° ΠΈ Π·Π°ΡΠ΅ΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ΅ΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅ΡΡΡΠ΅Ρ ΠΊΠ»Π°Π²ΠΈΡ ΡΡΡΠ΅Π»ΠΎΠΊ, ΡΡΠΈΡΠ°ΡΡ Π·Π½Π°ΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ»Π°Π²ΠΈΡΠΈ Clear (ΠΡΠΈΡΡΠΈΡΡ) ΠΈ Π²Π²ΠΎΠ΄ΠΈΡΡ ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ½ΠΎΠΏΠΎΡΠ½ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ, Π»ΠΈΠ±ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΌΡΠ»ΡΡΠΎΡΠ°. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ API, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΡΡΠ°Π²ΠΊΡ, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅, ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅. ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅ 5.12 ΠΏΠΎΠΊΠ°Π·Π°Π½ ΡΠΊΡΠ°Π½ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ±ΠΎΡΠ° ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π΄Π»Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π ΠΈΡΡΠ½ΠΎΠΊ 5.12. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ
ΠΡΠ° Π³Π»Π°Π²Π° Π·Π½Π°ΠΊΠΎΠΌΠΈΡ Π²Π°Ρ Ρ ΠΏΠΎΠ»Π½ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° MIDP. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π΅ ΠΎΠ±ΡΠΈΠ΅ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ: ΡΠ΅, ΡΡΠΎ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ ΠΏΠΎΠ΄ Displayable Π² ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ, ΠΈ ΡΠ΅, ΡΡΠΎ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΠΏΠΎΠ΄ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠ΅ΠΉ Item.
ΠΠ»Π°ΡΡ Screen ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠ· Displayable ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΈ Π² MIDP. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ MIDP Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΎΡΠ½ΠΎΠ²Π΅ Π±Π°Π·ΠΈΡΡΡΡΡΡ Π½Π° ΡΠΊΡΠ°Π½Π°Ρ .
Form, Π²ΠΈΠ΄ Screen, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΡΡ ΡΠΊΡΠ°Π½Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ. Form ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ String, ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΠ΅ ΠΊΠ»Π°ΡΡΠΎΠΌ Image, ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΡΡΠΈ ΡΠΈΠΏΡ ΡΠ²Π»ΡΡΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ ΠΊΠ»Π°ΡΡΠ° Item.
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ MIDP Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ Ρ ΡΠΊΡΠ°Π½Π° Π½Π° ΡΠΊΡΠ°Π½. ΠΠΎΡΡΠΎΠΌΡ ΡΠΊΡΠ°Π½Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΌΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΡΡΡΠ»ΠΊΠΈ Π² ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΊΡΠ°Π½Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΈΡΠΏΠ»Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ. Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΠΈΠ΄ΠΈΠΎΠΌΠ° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ°ΠΊΡΡ ΡΡΡΠ»ΠΊΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΊΡΠ°Π½.
Π Π³Π»Π°Π²Π΅ 3 ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΠΏΠΎΠ»Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΠΈ ΠΌΠ΅ΡΠ°ΡΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π Π³Π»Π°Π²Π΅ 4 ΠΎΠΏΠΈΡΠ°Π½ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ API MIDP. ΠΡΠ° Π³Π»Π°Π²Π° Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²ΡΠ΅ ΡΡΠΎ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎΠΌ Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ MIDP, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ API.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π³Π»Π°Π²Π΅ Π²Ρ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΠ΅ΡΡ Ρ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΌ API MIDP.
ΠΠ»Π°Π²Π° 6. ΠΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (API) MIDP
Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ MIDP, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π΄Π²ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° MIDP. Π ΠΏΠ΅ΡΠ²ΠΎΠΌ API MIDP, Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠΌ, Π²Ρ ΡΠ·Π½Π°Π»ΠΈ Π² Π³Π»Π°Π²Π΅ 4. ΠΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ API Π΄Π°Π΅Ρ Π²Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΄Π΅Π»Π°ΡΡ ΡΠΎ, ΡΡΠΎ Π² Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠΌ API ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ Π±ΡΠ»ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ:
ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠ±ΡΡΠΈΡΡ (ΡΠ°ΠΊΡΡ, ΠΊΠ°ΠΊ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΊΠ»Π°Π²ΠΈΡ), ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π²Π°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ; ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. ΠΠ²Π° ΠΊΠ»Π°ΡΡΠ° ΡΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠ³ΠΎ API: javax.microedition.lcdui. Canvas; javax.microedition.lcdui.Graphics.
ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅ 6.1 Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΠ°ΡΡΡ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ MIDP, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅ 5.1. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ ΠΊΠ»Π°ΡΡ Canvas ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΈΠ· Displayable.
Π ΠΈΡΡΠ½ΠΎΠΊ 6.1. ΠΠ±ΡΠ΅ΠΊΡΡ Canvas ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π° ΡΠΊΡΠ°Π½Π΅, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΡΠΊΡΠ°Π½Π°ΠΌΠΈ, ΠΎΠ½ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΈ ΡΠΊΡΠ°Π½Π°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°Ρ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° MIDP
ΠΠ΄Π½Π°ΠΊΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠ»Π°ΡΡ Canvas Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΠΏΠΎΠΌ Screen, ΠΎΠ½ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΉ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠΉ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠ΅ΠΉ Screen, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΈΠ»ΠΈ ΡΠΈΠΊΠ΅ΡΠ° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
ΠΠ»Π°ΡΡ Canvas ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΌ. Π§ΡΠΎΠ±Ρ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡΡ. ΠΠ°Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ»Π°ΡΡΠ° Graphics ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄. ΠΠΎΠ΄ΠΊΠ»Π°ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ, ΠΎΡΠ»ΠΈΡΠ°ΡΡΠΈΠ΅ΡΡ ΠΎΡ ΡΠ΅Ρ , ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Screen.
Π ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ Canvas Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ Π±Π»ΠΎΠΊ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π° Canvas, ΠΊΠ°ΠΊ ΠΈ Π² Π΄ΡΡΠ³ΠΈΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°Ρ . Canvas ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π²Π½Π΅Π΄ΡΡΡΡ CommandListener ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ Π±Π»ΠΎΠΊ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΡ.
ΠΠ΄Π½Π°ΠΊΠΎ, Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠ»Π°ΡΡ Canvas ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Canvas ΡΠ°ΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΊΠ»Π°Π²ΠΈΡ ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎ Π²Π²ΠΎΠ΄Ρ Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΡ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ. ΠΠ»Π°ΡΡ Canvas ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ API, Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π±Π»ΠΎΠΊΠ° ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΡ Π½Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ.
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ MIDP ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠ±ΡΡΠΈΠΈ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΎΠ±ΡΠ΅ΠΊΡΡ Canvas, Π²ΡΠ·ΡΠ²Π°Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π² ΠΎΠ±ΡΠ΅ΠΊΡΠ΅ Canvas. Π ΡΠ°Π±Π»ΠΈΡΠ΅ 6.1 ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ.
Π’Π°Π±Π»ΠΈΡΠ° 6.1. ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎ ΡΠΎΠ±ΡΡΠΈΡΡ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠ³ΠΎ API
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° β ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
protected void keyPressed(int KeyCode) β ΠΠ»Π°Π²ΠΈΡΠ° Π±ΡΠ»Π° Π½Π°ΠΆΠ°ΡΠ° ΠΈ ΠΎΡΠΏΡΡΠ΅Π½Π°
protected void keyReleased.(int KeyCode) β ΠΠ»Π°Π²ΠΈΡΠ° Π±ΡΠ»Π° ΠΎΡΠΏΡΡΠ΅Π½Π°
protected void keyRepeated(int KeyCode) β ΠΠ»Π°Π²ΠΈΡΠ° Π±ΡΠ»Π° Π½Π°ΠΆΠ°ΡΠ° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·
protected void pointerPressed(int x, int y) β Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π±ΡΠ» Π½Π°ΠΆΠ°Ρ
protected void pointerDragged(int x, int y) β Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π±ΡΠ» ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½
protected void pointerReleased(int x, int y) β Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π±ΡΠ» ΠΎΡΠΏΡΡΠ΅Π½
protected abstract void paint(Graphics g) β ΠΡΠΎΠΈΠ·ΠΎΡΠ΅Π» Π·Π°ΠΏΡΠΎΡ Canvas Π½Π° ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΡ
ΠΠ»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π²Π°Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡ Canvas Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ 6.1. ΠΠ΅ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΡ ΠΏΡΡΡΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ° Canvas, Π²Ρ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ ΠΈ Π²ΡΡΠ΅ΡΠΏΠΎΠΌΡΠ½ΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²Π°Ρ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡ Canvas Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ paint (), ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΌ Π² Canvas.
Π Π»ΠΈΡΡΠΈΠ½Π³Π°Ρ 6.1 ΠΈ 6.2 ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΠΏΡΠΎΡΡΠ°Ρ ΡΡ Π΅ΠΌΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ Π² Canvas. ΠΠΎΠ΄ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 6.1 ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠ΄ΠΎΠΌ MID-Π»Π΅ΡΠ° Π΄Π»Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π·Π½Π°ΠΊΠΎΠΌΠΎ. ΠΠΎΠ΄ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 6.2, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡ Canvas β Displayable, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΊΠΎΠ΄Ρ, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 6.1, ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π½Π° ΡΠΊΡΠ°Π½Π΅.
ΠΠΈΡΡΠΈΠ½Π³ 6.1. ΠΠ΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ CanvasDemol ΡΡΠ΅Π±ΡΠ΅ΡΡΡ MID-Π»Π΅Ρ, ΠΊΠ°ΠΊ ΠΈ Π»ΡΠ±ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠIDΠ
import javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.Display;
/"
ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ MID-Π»Π΅Ρ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠΈΠΉ ΠΏΡΡΡΠΎΠΉ Canvas Π½Π° Π΄ΠΈΡΠΏΠ»Π΅Π΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
ΠΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΠΉ Canvas ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠΌ ΠΊΠ»Π°ΡΡΠ° Canvasl.
@ΡΠΌΠΎΡΡΠΈ Canvasl
*/
public class CanvasDemol extends MIDlet
{
// ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°.
private static CanvasDemol midlet;
// ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° Canvas, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
// Π²ΠΈΠ΄ΠΈΡ Π½Π° Π΄ΠΈΡΠΏΠ»Π΅Π΅.
private static Canvasl instance;
private Display display; private Canvasl canvas;
/**
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ No-arg. ΠΡΠ·ΡΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ no-arg ΠΊΠ»Π°ΡΡΠ° MID-Π»Π΅ΡΠ°.
*/
public CanvasDemol()
super();
display = Display.getDisplay(this); instance = canvas; midlet = this;
{
/**
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° MID-Π»Π΅Ρ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ Π΄Π°Π½Π½ΡΠΌ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ.
@Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ MID-Π»Π΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡ.
**/
public static CanvasDemol getMIDlet()
{
return midlet;
{
public void startApp()
{
canvas = new Canvasl ();
display.setCurrent(canvas);
(
public void pauseApp()
{
}
public void destroyApp(boolean destroy)
{
instance = null;
canvas = null;
void quit ()
{
destroyApp(true);
notifyDestroyed();
}
}
ΠΠΈΡΡΠΈΠ½Π³ 6.2. Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Canvas, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡ Canvas
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Graphics;
/**
ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡ Canvas, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ MID-Π»Π΅ΡΠ° CanvasDemol. ΠΡΠΎΡ Canvas ΠΈΠΌΠ΅Π΅Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«ExitΒ», ΡΠ°ΠΊ ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.