扬声器1:让我们写一个程序 一个图形用户界面,也 包括标签。 而在这个标签,我们要存储 数,尽管作为一个字符串。 而我们将更新该标签 又一次,又一次,又一次。 所以,最终我们算 向下从50到零。 Glabel,称它的标签,得到 返回新glabel价值。 现在,我不打算给这个 标签值,因此我会 放在引号,引文结束。 接下来让我们叫个setFont,路过 在标签,让我们在传递 特别是所谓的字体 SANSSERIF 36点。 出现这种情况存在的字体 里面的CS50设备。 于是最后,让我们添加标签 到如下的窗口。 现在,让我们继续以诱使 循环是怎么回事计数 从50降低到零。 而这循环中,让我们反复 更新标签和 在屏幕上显示出来,因为,INT I 得到50,i是大于或等于 零,我减,减。 现在,标签,事实证明, 必须是字符串。 但实际上,我计数, 使用整数。 所以,在某种程度上,我将不得不转换 整数,我,一个字符串 表示箭头。 要做到这一点,让我们声明 char中支架3。 因此,我们有足够的存储空间 为2位的数字,然后是 空终止符。 那么让我们来调用的print f传球 以s,传入报价, 引文%的我。 这表明我们确实希望 格式化的整数。 最后,在经过我自己。 换句话说,s打印f或字符串 打印楼就像打印楼预计 格式字符串以及紧接着的一些变量 替换成 格式字符串。 但它也可以接受是其第一 参数,位置在其中 想存储的字符串 你已经代表 与该格式字符串。 所以接下来,让我们继续前进,呼叫建立, 标签,通过标签中,通过以s。 现在,终于,只是因为这个标签 宽度会随时间而改变 我们倒计时从50到49,打点, 点,点,到九到八。 这是不一样宽 两位数字是。 让我们继续来动态计算出 什么的这个宽度 标签应再保证 它总是在屏幕上居中。 我首先要声明一个双, 称这是X,而我则打算 存储的x里面,拿到的结果 宽度,传入的宽度 整个窗口,减得宽, 通过在标签中。 然后把整个事情由两个。 同样我要申报y将成为 等于得到整个高度 只是窗口,减去获取高度 标签和除以2为好。 最后,我要打电话介绍SetLocation, 通过在标签, 通过在X,传入年。 有通过定位 标签在x逗号年。 最后,使该倒数不 发生得太快,让我们 暂停,对于比如说,在100毫秒 标签的每个更新。 要做到这一点,我们就可以调用pause 功能,即在被定义 斯坦福移植的库, 很简单,如下所示。 现在让我们保存,编译, 并运行此程序。 做标签,点斜线,标签。 还有我的用户界面 从50开始递减计数。 计算下来,下来, 上下,和完成。