一沙一世界,一叶一春秋

周末看了into the universe with stephen hawking(与史蒂芬霍金一起了解宇宙)。

随着影片在时间和空间上去探索,几乎在无限大无限长和无限远的粒度上去释放想象力,思维和知识,这简直是过于神奇了。

 

感觉像是受到宗教的洗礼,我们不过是宇宙中极其微小的尘埃,转瞬即逝,至情至性的生活就好。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个基本的时间管理app的设计和实现: 1. 界面设计 我们可以设计一个简单的界面,包括输入框、添加按钮、任务列表和倒计时器。输入框用于输入任务的名称,添加按钮用于添加任务,任务列表用于显示所有的任务,倒计时器用于显示任务的倒计时时间。 2. 数据结构 我们需要使用一个数据结构来存储所有的任务。一个简单的方式是使用一个数组或列表来存储任务,每个任务包含名称、开始时间和结束时间等信息。或者使用类来封装任务信息并存储在一个列表中。 3. 功能实现 添加任务:用户在输入框中输入任务名称后,点击添加按钮,将任务添加到列表中,并显示倒计时器。 删除任务:用户可以在任务列表中选择一个任务,并删除它。 倒计时器:对于每个任务,我们需要计算出它的倒计时时间,并在倒计时器中显示。可以使用`millis()`函数获取当前时间,并计算出任务的剩余时间。在绘制倒计时器时,可以使用`text()`函数将倒计时时间绘制在屏幕上。 4. 代码实现 以下是一个简单的时间管理app的代码示例,使用了Processing语言进行实现: ``` ArrayList<Task> tasks = new ArrayList<Task>(); int taskCount = 0; void setup() { size(400, 400); textAlign(CENTER, CENTER); textSize(18); } void draw() { background(255); for (int i = 0; i < tasks.size(); i++) { Task task = tasks.get(i); task.draw(); } } void mousePressed() { for (int i = 0; i < tasks.size(); i++) { Task task = tasks.get(i); if (task.isMouseOver()) { tasks.remove(i); break; } } } void keyPressed() { if (key == ENTER) { tasks.add(new Task(taskCount++, millis(), millis() + 60 * 1000, key)); } } class Task { int id; int startTime; int endTime; char name; Task(int id, int startTime, int endTime, char name) { this.id = id; this.startTime = startTime; this.endTime = endTime; this.name = name; } void draw() { int elapsedTime = millis() - startTime; int remainingTime = endTime - millis(); if (remainingTime < 0) { remainingTime = 0; } fill(0); text(name, 50, 50 + id * 20); text(remainingTime / 1000, 350, 50 + id * 20); } boolean isMouseOver() { int remainingTime = endTime - millis(); return mouseX > 300 && mouseX < 400 && mouseY > 50 + id * 20 && mouseY < 70 + id * 20 && remainingTime > 0; } } ``` 在这个示例中,我们使用了一个`ArrayList`来存储所有的任务,并在`setup()`函数中设置了画布的大小和文本的对齐方式和大小。在`draw()`函数中,我们遍历所有的任务,并调用它们的`draw()`函数进行绘制。在`mousePressed()`函数中,我们检查用户是否点击了某个任务,并在点击时将其从列表中删除。在`keyPressed()`函数中,我们检查用户是否按下了回车键,并在按下时添加一个新的任务到列表中。在`Task`类中,我们存储了每个任务的ID、开始时间、结束时间和名称,并实现了一个`draw()`函数用于绘制任务和倒计时器,以及一个`isMouseOver()`函数用于检查鼠标是否悬停在任务上。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值