1 00:00:00,000 --> 00:00:00,490 2 00:00:00,490 --> 00:00:03,350 ZVUČNIK 1: Idemo napisati program s grafičko korisničko sučelje koje se također 3 00:00:03,350 --> 00:00:04,580 uključuje i etiketu. 4 00:00:04,580 --> 00:00:07,940 I u tom etiketom, idemo za pohranu broj, iako u obliku niza. 5 00:00:07,940 --> 00:00:10,880 I mi ćemo ažurirati tu oznaku opet, i opet, i opet. 6 00:00:10,880 --> 00:00:15,040 Tako da smo u konačnici računati dolje od 50 do nule. 7 00:00:15,040 --> 00:00:20,910 Glabel, nazivajući ga label, dobiva vratiti vrijednost novog glabel. 8 00:00:20,910 --> 00:00:22,900 Sada, ja ne idem dati ovo Oznaka vrijednost još, pa ću 9 00:00:22,900 --> 00:00:25,040 stavio u quote, završiti citat. 10 00:00:25,040 --> 00:00:29,080 >> Sljedeća nazovimo setFont, prolazi u etiketi, pa da prođe u 11 00:00:29,080 --> 00:00:32,910 posebno font zove SansSerif 36 bod. 12 00:00:32,910 --> 00:00:36,370 Font koji se događa da postoje unutar CS50 uređaja. 13 00:00:36,370 --> 00:00:41,940 Tada je konačno, dodajmo naljepnicu do prozora kako slijedi. 14 00:00:41,940 --> 00:00:44,580 Sada, neka je nastaviti izazvati petlja koja će brojati 15 00:00:44,580 --> 00:00:46,400 od 50 do nule. 16 00:00:46,400 --> 00:00:49,520 A unutar tog kruga, neka je iterativno ažurirati naljepnicu i 17 00:00:49,520 --> 00:00:55,800 prikaz na zaslonu, za, int i dobiva 50, i veća od ili jednaka 18 00:00:55,800 --> 00:00:59,750 na nulu, i minus, minus. 19 00:00:59,750 --> 00:01:02,090 >> Sada naljepnice, ispada, moraju biti nizovi. 20 00:01:02,090 --> 00:01:04,110 Ali ja zapravo računam, pomoću prirodnih brojeva. 21 00:01:04,110 --> 00:01:07,750 Tako nekako ću morati pretvoriti cijeli broj, i, da string 22 00:01:07,750 --> 00:01:09,010 zastupljenost strelica. 23 00:01:09,010 --> 00:01:12,480 Da biste to učinili neka je proglasiti Char je nosač tri. 24 00:01:12,480 --> 00:01:15,500 Tako da imamo dovoljno prostora za pohranu za dvoznamenkastog broja, nakon čega slijedi 25 00:01:15,500 --> 00:01:16,910 null terminator. 26 00:01:16,910 --> 00:01:22,480 Onda nazovimo je print f prolazu u sekundama, prolazi u citatu, 27 00:01:22,480 --> 00:01:24,220 završiti citat posto ja. 28 00:01:24,220 --> 00:01:26,960 Što pokazuje da smo zaista žele formatirati cijeli broj. 29 00:01:26,960 --> 00:01:29,420 Na kraju prolazi u i sebi. 30 00:01:29,420 --> 00:01:34,100 Drugim riječima, s tiskanim F, ili string print f, baš kao i ispis f, očekuje 31 00:01:34,100 --> 00:01:37,450 format string uz neke varijable zamijeniti u to 32 00:01:37,450 --> 00:01:38,430 format string. 33 00:01:38,430 --> 00:01:41,910 No, to također prihvaća je njegova prva argument, mjesto u kojem ćete 34 00:01:41,910 --> 00:01:44,400 Željeli pohraniti string da ste zastupljeni 35 00:01:44,400 --> 00:01:45,830 s tim format string. 36 00:01:45,830 --> 00:01:52,540 >> Zato sljedeći, idemo naprijed i pozvati postaviti, label, prolazi u kuću, prolazi u sekundi. 37 00:01:52,540 --> 00:01:56,430 Sada, na kraju, samo zato što ovaj naljepnice širina će se s vremenom mijenjati, kao 38 00:01:56,430 --> 00:02:00,640 smo odbrojavati od 50, do 49, do točke, dot, dot, da devet-osam. 39 00:02:00,640 --> 00:02:03,170 Koji nisu toliko širok kao dvoznamenkastog broja je. 40 00:02:03,170 --> 00:02:05,570 Idemo nastaviti shvatiti dinamički ono Širina ove 41 00:02:05,570 --> 00:02:08,930 Naljepnica bi trebala biti, a onda bi se osiguralo da uvijek je usmjeren na zaslonu. 42 00:02:08,930 --> 00:02:12,390 Ja sam prvi put će se proglasiti double, nazvavši ga X, a ja sam tada će 43 00:02:12,390 --> 00:02:16,880 pohraniti unutar X, rezultat get Širina, prolazi u širini 44 00:02:16,880 --> 00:02:22,120 cijeli prozor, minus dobili širinu, prolazi u etiketi. 45 00:02:22,120 --> 00:02:24,880 Zatim dijeljenjem cijelu stvar s dva. 46 00:02:24,880 --> 00:02:29,660 Isto tako ću proglasiti y se jednaka dobiti visinu cjelini 47 00:02:29,660 --> 00:02:37,280 prozor, minus get visina samo label, a podjele koja je po dva, kao dobro. 48 00:02:37,280 --> 00:02:40,680 Konačno, ja ću nazvati setlocation, prolazi u oznaci, 49 00:02:40,680 --> 00:02:43,180 prolazi u X, prolazi u y. 50 00:02:43,180 --> 00:02:45,970 Tu pozicioniranjem natpis na x zarezom y. 51 00:02:45,970 --> 00:02:49,290 >> Na kraju, tako da se ovaj ne odbrojavanje dogoditi prebrzo neka je 52 00:02:49,290 --> 00:02:53,350 pauzirati, za recimo, 100 milisekundi između svaki update etiketi. 53 00:02:53,350 --> 00:02:56,320 Da biste to učinili, možemo nazvati pauze funkcija, koji je definiran u 54 00:02:56,320 --> 00:03:00,390 Stanford prijenosni knjižnica, jednostavno kao što slijedi. 55 00:03:00,390 --> 00:03:04,230 >> Sada ćemo uštedjeti, sastaviti, i pokrenuti ovaj program. 56 00:03:04,230 --> 00:03:08,320 Provjerite oznaku, dot crtu, naljepnicu. 57 00:03:08,320 --> 00:03:11,000 Tu je moj korisničko sučelje odbrojavanje od 50 godina. 58 00:03:11,000 --> 00:03:14,570 Odbrojavanje, i dolje, i dolje, i učinio. 59 00:03:14,570 --> 00:03:16,992