会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132808个问题
JAVA 全系列/第五阶段:JavaWeb开发/Ajax技术详解(旧) 12679楼
JAVA 全系列/第五阶段:JavaWeb开发/Ajax技术详解(旧) 12680楼

#主要包括坦克的创建,显示,移动及射击的功能

import pygame
COLOR_BLUE=pygame.Color(0,0,0)
COLOR_red=pygame.Color(255,0,0)
class MainGame():
    window=None
    my_tank=None
    def __init__(self):
        pass
    #开始游戏方法
    def startGame(self):
    #加载主窗口
       pygame.display.init()
#创建窗口
       MainGame.window=pygame.display.set_mode([700,600])
    #初始化坦克
       MainGame.my_tank=Tank(350,300)
    #设置窗口标题
       pygame.display.set_caption("坦克大战")
       while True:
         MainGame.window.fill(COLOR_BLUE)
         self.eventlist()

         MainGame.window.blit(self.getTextSurface("剩余敌方坦克数量%d"%6),(5,5))
         #调用坦克的显示方法
         MainGame.my_tank.displayTank()
         pygame.display.update()
#结束游戏
    def endGame(self):
        print("谢谢使用,欢迎下次使用")
        exit()
    def eventlist(self):
        enentlist=pygame.event.get()
        for event in enentlist:
            if event.type==pygame.QUIT:
                self.endGame()
            if event.type==pygame.KEYDOWN:
                if event.key==pygame.K_UP:
                    print("按下上键,坦克向上移动")
                if event.key == pygame.K_DOWN:
                    print("按下下键,坦克向下移动")
                if event.key == pygame.K_LEFT:
                    print("按下左键,坦克向左移动")
                if event.key == pygame.K_RIGHT:
                    print("按下右键,坦克向右移动")
    def getTextSurface(self,text):
        pygame.font.init()
        font=pygame.font.SysFont("kaiti",18)
        testSurface=font.render(text,True,COLOR_red)
        return testSurface
MainGame().startGame()
class Tank():
    #添加距离左边left,距离上边top
    def __init__(self,left,top):
    #保存加载的图片
       self.images={"U":pygame.image.load("scripts/p1tankU.gif"),
                    "D": pygame.image.load("scripts/p1tankD.gif"),
                    "L": pygame.image.load("scripts/p1tankL.gif"),
                    "R": pygame.image.load("scripts/p1tankR.gif"),
                    }
    #(属性)方向
       self.direction="U"
    #根据当前图片的方向获取图片
       self.image=self.images[self.direction]
    #根据图片获取区域
       self.rect=self.image.get_rect()
    #设置区域的left和top
       self.rect.left = left
       self.rect.top = top

    #坦克的移动方法
    def moveTank(self):
        pass
#碰撞墙壁的方法
    def hitwalls(self):
        pass
#展示坦克
    def displayTank(self):
      #获取展示的对象
        self.image=self.images[self.direction]
      #调用blit方法显示
        MainGame.window.blit(self.image,self.rect)
#我方坦克类继承坦克类,主要包括创建与敌方坦克的碰撞方法
class MyTank():
    def __init__(self):
        pass
#碰撞敌方坦克的方法
    def hitEnemyTank(self):
        pass

#敌方坦克继承坦克类,主要包括创建于我方坦克的碰撞方法
class EnemyTank(Tank):
    def __init__(self):
        pass
    def hitMyTank(self):
        pass

#子弹类:主要包括子弹的创建,显示及移动的功能
class Bullet():
    def __init__(self):
        pass
#子弹的移动方法
    def bulletMove(self):
        pass
    #展示子弹的方法
    def displaybullet(self):
        pass
    #我方子弹碰撞敌方坦克的方法
    def hitEnemy(self):
        pass
    #敌方子弹与我方坦克的碰撞方法
    def hitMyTank(self):
        pass
    #子弹与墙壁的碰撞
    def hitwalls(self):
        pass

#墙壁类:主要包括墙壁的创建,显示的功能
class wall():
    def __init__(self):
        pass
    #展示墙壁的方法
    def displaywall(self):
        pass


#爆炸效果类:主要展示爆炸效果
class Explode():
    def __init__(self):
        pass
    #展示爆炸效果
    def displayExplode(self):
        pass

#音效类:主要播放音乐
class Music:
    def __init__(self):
        pass
    #开始播放音乐
    def play(self):
        pass

41.png

18行和52行有问题,可是我找不到错哪了


Python 全系列/第二阶段:Python 深入与提高/游戏开发-坦克大战 12681楼
Python 全系列/第一阶段:Python入门/面向对象 12682楼
Python 全系列/第一阶段:Python入门/Python入门(动画版) 12683楼

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!--  盒子模型组成部分
    
            1:内容区域 content
                1:默认大小,盒子大小由内容撑开
                2:手动设置,width和height属性完成对盒子大小的设计
            2:内边距Padding
                1:边框与内容之间的空白就是内边距
                2:填充值:PX值(推荐)与百分比
                3:top|bottom|right|left
            3:边框Border
            4:外边距Margin
        -->
    <!-- s实操细节
            1:宽度设置百分比生效
            2:高度设计百分比不生效,高度一般设置PX值
     -->
    <style>
        * {
            margin: 0 auto;
            padding: 0;
        }

        ul {
            list-style: none;
            height: 50px;
            line-height: 50px;
            background-color: black;
        }

        ul li {
            float: left;      
        }
        ul li a {

            color: aliceblue;
            text-decoration: none;
            /*去除超链接下划线*/
            padding: 5px;

        }
        nav{
            height: 50px;
            width: 100%;
            background-color: black;
            padding: 5px;

        }
        nav a{
            line-height: 50px;
            color: aliceblue;
            text-decoration: none;
        }
    </style>
</head>

<body>
    <nav>
        <a href="#">首页</a>
        <a href="#">手机</a>
        <a href="#">家电</a>
        <a href="#">配件</a>
        <a href="#">生活</a>
        <a href="#">服务</a>
        <a href="#">社区</a>
    </nav>
    <br>
    <ul>
        <li><a href="#">首页</a></li>
        <li><a href="#">手机</a></li>
        <li><a href="#">家电</a></li>
        <li><a href="#">配件</a></li>
        <li><a href="#">生活</a></li>
        <li><a href="#">服务</a></li>
        <li><a href="#">社区</a></li>
    </ul>


</body>

</html>

老师,能用nav标签是不是就不用费劲写ul li标签了image.png

WEB前端全系列/第一阶段:HTML5+CSS3模块/CSS盒子模型 12684楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/网络编程(旧) 12685楼
Python 全系列/第二阶段:Python 深入与提高/游戏开发-坦克大战 12686楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/网络编程(旧) 12687楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/网络编程(旧) 12688楼

你好老师,我的这个输入java点击search就会出现下面这个404未找到错误。但是如果我不加后面的search,直接输入/redirect就会进入百度界面。只要加后面的search就错误






image.png

image.png

image.png

package com.bjsxt.servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * 重定向相应
 * response.sendRedirect(URL地址)重定向响应会在响应头中添加一个Location的key对应的value是给定的URL。客户端浏览器在解析响应头后自动向Location中的URL发送请求。
 */
public class RedirectServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //进去之后直接会自动请求百度网页并进入
       // resp.sendRedirect("https://www.baidu.com");//请求一个URL


        req.setCharacterEncoding("utf-8");
        //需求:创建一个搜索页面,通过百度搜索引擎完成内容搜索。
        String search = req.getParameter("search");
        //resp.sendRedirect("https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=");
        resp.sendRedirect("https://www.baidu.com/s?wd="+search);

    }
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">

   
    
    
    
    <servlet>
        <servlet-name>redirectServlet</servlet-name>
        <servlet-class>com.bjsxt.servlet.RedirectServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>redirectServlet</servlet-name>
        <url-pattern>/redirect</url-pattern>
    </servlet-mapping>
    
</web-app>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <form action="/redirect" method="post">
        搜索:<input type="text" name="search" /></br>
        <input type="submit" value="Search">
    </form>
</body>
</html>


JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解(旧) 12690楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637