学完本教程后,你也能做出这样的烟花秀。
如上图示,我们这里通过让画面上一个粒子分裂为X数量的粒子来模拟爆炸效果。粒子会发生"膨胀”,意思是它们会以恒速移动且相互之间的角度相等。这样就能让我们以一个向外膨胀的圆圈形式模拟出烟花绽放的画面。
经过一定时间后,粒子会进入"自由落体”阶段,也就是由于重力因素它们开始坠落到地面,仿若绽放后熄灭的烟花。
基本知识:用Python和Tkinter设计烟花。
这里不再一股脑把数学知识全丢出来,我们边写代码边说理论。首先,确保你安装和导入了Tkinter,它是Python的标准GUI库,广泛应用于各种各样的项目和程序开发,在Python中使用Tkinter可以快速的创建GUI应用程序。
import tkinter as tk
from PIL import Image, ImageTk
from time import time, sleep
from random import choice, uniform, randint
from math import sin, cos, radians
除了Tkinter之外,为了能让界面有漂亮的背景,我们也导入PIL用于图像处理,以及导入其它一些包,比如time,random和math。它们能让我们更容易的控制烟花粒子的运动轨迹。
Tkinter应用的基本设置如下:
root = tkTk()
为了能初始化Tkinter,我们必须创建一个Tk()根部件(root widget),它是一个窗口,带有标题栏和由窗口管理器提供的其它装饰物。该根部件必须在我们创建其它小部件之前就创建完毕,而且只能有一个根部件。
w = tkLabel(root, text="Hello Tkinter!")
这一行代码包含了Label部件。该Label调用中的第一个参数就是父窗口的名字,即我们这里用的"根”。关键字参数"text”指明显示的文字内容。你也可以调用其它小部件:Button,Canvas等等。
wpack()
rootmainloop()
接下来的这两行代码很重要。这里的打包方法是告诉Tkinter调整窗口大小以适应所用的小部件。窗口直到我们进入Tkinter事件循环,被rootmainloop()调用时才会出现。在我们关闭窗口前,脚本会一直在停留在事件循环。
将烟花绽放转译成代码
现在我们设计一个对象,表示烟花事件中的每个粒子。每个粒子都会有一些重要的属性,支配了它的外观和移动状况:大小,颜色,位置,速度等等。
您好,很高兴为您解答。
id这个算是父Id 可以通过这个id来查询 在这个id下是否有子id 同时也可以记录这个是那条留言的id
son_id这个是子id 然后通过这个id 可以找到相对应的父id
news_id记录文章的id
sender_author接受留言的人
receiver_author发送留言的人
content留言的内容
status在有人回复你的帖子的时候 这个值从0转为1时候 该消息不在显示 如果没点击进去 该消息依然存在
time记录留言的时间
留言板回复思路
当发送方(也就留言的人)要到该文章下留言或者回复的的时候就需要接收方(也就文章的作者或者要被回复的人)来接收。单数据库语句查询到这个键sender_author和receiver_author 的是就会知道接收方是谁和发送方是谁了。然后在根据这个判断来显示出回复内容。
提示你有一条新的消息思路
当发送方发送消息的时候 这个status的值默认为0 就是提示接收发 你有一条新的消息。当点击进去的时候 调用数据库修改语句把指定的值修改成为1 这样就不显示了 。
查看评论的时候 的数据库操作语句
function message($id){
$query = $this->db->query("SELECT FROM message WHERE news_id = '$id'");//或者文章id后查询里面所有评论
return $query->result();
}
这个是获取父的留言内容的代码
<php foreach($query as $sel){>
<p>留言用户:<php echo $sel->receiver_author;> 留言内容:<php echo $sel->content></p>
<php }>
用户是否登陆 并给予留言权限
<form id="form1" name="form1" method="post" action="<php echo site_url()"/publish/user_message">">
<textarea rows="5" cols="50" name="huifu" <php if($uere_name == "0"){echo "disabled";}> >
<php
if($uere_name == "0")
{echo "抱歉你还没登录不能进行留言";}
>
</textarea>
<input class="wole" name="author" value="<php echo $author;>" /><!--接受方帖子作者-->
<input class="wole" name="news_id" value="<php echo $news_idx;>" /><!--文章id-->
<input type="submit" name="Submit"/>
</form>
<script language="javascript">
function updateinfo(){
if(<php echo $uere_name;> == 1){
documentform1Submitvalue = "留言";
documentform1Submitdisabled = false;
}
else{
documentform1Submitvalue = "还未登录";
documentform1Submitdisabled = "disabled";
}
}
updateinfo();
</script>
这个是显示了 获取指定的父id 之后来显示他里面的全部子id 和留言内容
<p>这里是<php echo $is;>楼 用户:<php echo $sel->receiver_author;> <br />留言内容:<php echo $sel->content>
<a onClick="showdiv('contentid<php echo $is;>','showtext<php echo $is;>')" href="javascript:void(0)">回复</a>
<div id="contentid<php echo $is;>" class="none">
<php
$query = $this->db->query("select from message where son_id ='$sel->id' order by id");//获取指定父id的子回复
$revis = $query->result();
foreach($revis as $row){>
<p><php if($row->sender_author == $row->receiver_author){echo $row->sender_author;}
else{ echo $row->sender_author"回复了:"$row->receiver_author;}>
内容是:<php echo $row->content></p>
<php }>
<form action="<php echo site_url()"/publish/son_message">" method="post">
<input name="son_idx" class="wole" value="<php echo $sel->id>" />
<input name="receiver_author" class="wole" value="<php echo $sel->receiver_author;>" />
<input class="wole" name="news_id" value="<php echo $news_idx;>" /><!--文章id-->
<textarea rows="5" cols="50" name="huifux"></textarea>
<br><input type="submit" name="sub" value="回复"></form></div></p>
<script language="JavaScript" type="text/JavaScript">
<!--
function showdiv(targetid,objN){
var target=documentgetElementById(targetid);
var clicktext=documentgetElementById(objN)
if (targetstyledisplay=="block"){
targetstyledisplay="none";
clicktextinnerText="回复";
} else {
targetstyledisplay="block";
clicktextinnerText='收起';
}
}
-->
</script>
如若满意,请点击右侧采纳答案,如若还有问题,请点击追问
希望我的回答对您有所帮助,望采纳!
~ O(∩_∩)O~
html文件笔记本什么的都可以修改,可以直接以浏览器运行,但是一个网站和一个网页差别很大的,一般网上有模版,懂点html都可以修改,这个不难,做个网页用一模板修改就行,可以自己上网找然后修改。一般有这个代码就可以了。
欢迎分享,转载请注明来源:表白网
评论列表(0条)