会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 134296个问题

import pygame

SCREEN_WIDTH = 700
SCREEN_HEIGHT = 500
BG_COLOR = pygame.Color(0, 0, 0)


class MainGame():
    window = None

    def __init__(self):
        pass

    # 开始游戏
    def startGame(self):
        # 加载主窗口
        # 初始化窗口
        pygame.display.init()
        # 设置窗口的大小及显示
        MainGame.window = pygame.display.set_mode([SCREEN_WIDTH, SCREEN_HEIGHT])
        # 设置窗口的标题
        pygame.display.set_caption('坦克大战1.03')
        while True:
            # 给窗口设置填充色
            MainGame.window.fill(BG_COLOR)
            pygame.display.update()

    # 结束游戏
    def endGame(self):
        print('谢谢使用,欢迎光临!!!')
        exit()

    # 获取事件
    def getEvent(self):
        # 获取所以事件
        eventList = pygame.event.get()
        # 遍历事件
        for event in eventList:
            # 判断按下的键事关闭还是键盘按下
            # 如果按的是退出,关闭窗口
            if event.type == pygame.QUIT:
                self.endGame()
            # 如果键盘按下
            if event.type == pygame.KEYDOWN:
                # 判断按下的是上下左右
                if event.key == pygame.K_LEFT:
                    print('按下左键,坦克左移')
                elif event.key == pygame.K_RIGHT:
                    print('按下右键,坦克右移')
                elif event.key == pygame.K_UP:
                    print('按下上键,坦克上移')
                elif event.key == pygame.K_DOWN:
                    print('按下下键,坦克下移')


class Tank:
    def __init__(self):
        pass

    # 移动
    def move(self):
        pass

    # 射击
    def shot(self):
        pass

    # 展示坦克
    def displayTank(self):
        pass


# 我方坦克
class MyTank(Tank):
    def __init__(self):
        pass


# 敌方坦克
class EnemyTank(Tank):
    def __init__(self):
        pass


# 子弹类
class Bullet:
    def __init__(self):
        pass

    # 移动
    def move(self):
        pass

    # 展示子弹移动方法
    def displayBullet(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


if __name__ == '__main__':
    MainGame().startGame()

老师,关闭游戏窗口,总是等待响应,关不了。屏幕截图 2021-03-31 094032.png

Python全系列/第二阶段:Python 深入与提高/游戏开发-坦克大战 23416楼

老师为什么我按照代码写的,结果却很不一样呢?代码如下:


<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title></title>
  <script>
   var yan;
   /***********验证码的生成***************/
   function YZM(){
    
    //4位随机整数
    yan = Math.floor(Math.random()*9000+1000);
    //获得span对象
    var span = document.getElementById("yzm_span");
    span.innerText = yan;
   }
   
   /************提取公部分***************/
   function check(id,reg){
    
    //获取对应id的value
    var uid = document.getElementById(id);
    var val = uid.value;
    
    //获取alt属性
    var alt = uid.alt;
    
    //获得span对象
    var span = document.getElementById(id+"_span");]
    
    if(val == null || val == ""){
     
     span.innerText = "×"+alt+"不能为空";
     span.style.color = "red";
     return false;
    }else if(reg.test(val)){
     
     span.innerText = "√"+alt+"合法";
     span.style.color = "green";
     return true;
    }else{
     
     span.innerText = "×"+alt+"不合法";
     span.style.color = "red";
     return false;
    }
   }
   
   /**********检验用户名的方法******************/
   function checkName(){
    //汉字的正则表达式
    var  reg=/^[\u4e00-\u9fa5]{3,5}$/;
    
    return check("uname",reg);
   }
   
   /*********校验邮箱方法**************/
   function  checkEmail(){
    //邮箱的正则表达式
    
    var  reg=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
    
       return check("email",reg);
   }
   
   
   /*********检验密码方法**************/
   function  checkPwd(){
    //密码的正则表达式
    
    var  reg=/^\d{3,6}$/;
    
       return check("pwd",reg);
   }
   
   /*********检验手机号方法**************/
   function  checkPhone(){
    //手机号的正则表达式
    
    var  reg=/^\d{11}$/;
    
       return check("phone",reg);
   }
   
   /***********性别校验***************/
   function checkSex(){
    
    //获取所有性别对象
    var sex = document.getElementById("sex");
    
    //获取span对象
    var span = document.getElementById("sex_span");
    for(var i in sex){
     
     if(sex[i].checked){
      
      span.innerHTML = "性别选择成功"
      span.style.color = "green";
      return true;
     }
    }
    
    span.innerHTML = "请选择性别";
    span.style.color = "red";
    return false;
   }
   
   /***********爱好校验***************/
   function checkHob(){
    
    //获取所有爱好对象
    var hob = document.getElementById("hobby");
    
    //获取span对象
    var span = document.getElementById("hobby_span");
    for(var i in hob){
     
     if(hob[i].checked){
      
      span.innerHTML = "爱好选择成功"
      span.style.color = "green";
      return true;
     }
    }
    
    span.innerHTML = "请选择爱好";
    span.style.color = "red";
    return false;
   }
   
   /*********籍贯校验***********/
   function  checkAdress(){
    
    var  sel=document.getElementById("sel").value;
    
    var  span =document.getElementById("sel_span");
    
    if(sel==0){
     
     span.style.color="red";
     span.innerText="请选择籍贯"
     
     return false;
    }else {
     
     span.style.color="green";
     span.innerText="籍贯选择成功"
     
     return true;
     
    }
   }
   
   /**********验证码输入校验************/
   function checkYZM(){
    
    //获取自己输入的验证码
    var yzm = document.getElementById("yzm").value;
    //获取span对象
    var span = document.getElementById("yzm2_span");
    
    if(yzm==yan){
     
     span.innerText = "验证码正确";
     span.style.color = "green";
     return true;
    }else{
     
     span.innerText = "验证码错误";
     span.style.color = "red";
     return false;
    }
   }
   
   /***********是否同意协议************/
   function checkAgr(){
    
    //同意框
    var check = document.getElementById("check");
    //提交
    var sub = document.getElementById("sub");
    
    sub.disabled = !check.checked;
   }
   
   function zong(){
    
    var flag = checkName()&&checkPwd()&&checkPhone()&&checkEmail()&&checkSex()&&checkAdress()&&checkYZM();
    
    return flag;
   }
   
   /*
   
    *
    * 正则表达式:
    *   
    * 正则表达式是对于数据格式进行一定的规范限制
    *
    *
    * ^:开始
    * [0-9]  [a-z A-Z] :数字  字母
    *
    * {2,4} :段域 至少是2位  最多是4位
    * {3}:指定范围就是3位
    * {2,}:至少是2位
    *  $:结束
    *
    * \d:[0-9]
    *
    * \w[0-9 a-z A-Z]
    *
    * */

  </script>
 </head>
 <body onload="YZM()">
  <center>
   <h3>注册页面</h3>
   <hr />
   <form action="" method="get" onsubmit="return zong()">
    <table>
     <tr height="35px">
      <td width="150px">用户名:</td>
      <td width="400px">
       <input type="text" name="uname" id="uname" value="" alt="用户名" onblur="checkName()"/>
       <span id="uname_span">*用户名必须是3-5位的汉字</span>
      </td>
     </tr>
     <tr height="35px">
      <td>密码:</td>
      <td>
       <input type="password" name="pwd" id="pwd" value="" alt="密码" onblur="checkPwd()"/>
       <span id="pwd_span"></span>
      </td>
     </tr>
     <tr height="35px">
      <td>手机号:</td>
      <td>
       <input type="text" name="phone" id="phone" value="" alt="手机号" onblur="checkPhone()"/>
       <span id="phone_span"></span>
      </td>
     </tr>
     <tr height="35px">
      <td>邮箱:</td>
      <td>
       <input type="text" name="email" id="email" value="" alt="邮箱" onblur="checkEmail()"/>
       <span id="email_span"></span>
      </td>
     </tr>
     <tr height="35px">
      <td>性别:</td>
      <td>
       男:<input type="radio" name="sex" id="sex" value="0" onblur="checkSex()"/>
       女:<input type="radio" name="sex" id="sex" value="1" onblur="checkSex()"/>
       <span id="sex_span"></span>
      </td>
     </tr>
     <tr height="35px">
      <td>爱好:</td>
      <td>
       <input type="checkbox" name="hobby" id="hobby" value="1" onblur="checkHob()"/>唱歌
       <input type="checkbox" name="hobby" id="hobby" value="2" onblur="checkHob()"/>跳舞
       <input type="checkbox" name="hobby" id="hobby" value="3" onblur="checkHob()"/>溜冰<br />
       <input type="checkbox" name="hobby" id="hobby" value="4" onblur="checkHob()"/>LOL
       <input type="checkbox" name="hobby" id="hobby" value="5" onblur="checkHob()"/>爬山
       <input type="checkbox" name="hobby" id="hobby" value="6" onblur="checkHob()"/>旅游
       <span id="hobby_span"></span>      
      </td>
     </tr>
     <tr height="35px">
      <td>籍贯:</td>
      <td>
       <select name="address" id="sel" onchange="checkAdress()">
        <option value="0">--请选择--</option>
        <option value="1">北京</option>
        <option value="2">上海</option>
        <option value="3">南京</option>
        <option value="4">杭州</option>
       </select>
       <span id="sel_span"></span>
      </td>
     </tr>
     <tr height="35px">
      <td>验证码:</td>
      <td>
       <input type="number" name="" id="yzm" value="" onblur="checkYZM()"/>
       <span id="yzm_span"></span>
       <span id="yzm2_span"></span>
      </td>
     </tr>
     <tr height="35px">
      <td>个人介绍:</td>
      <td>
       <textarea name="intro" rows="8" cols="30"></textarea>
      </td>
     </tr>
     <tr height="35px">
      <td colspan="2" align="center">
       <input type="checkbox" name="" id="check" value="" onclick="checkAgr()"/>是否同意本公司协议
      </td>
      
     </tr>
     <tr height="35px">
      <td colspan="2" align="center">
       <input type="submit" name="" id="sub" value="注册" disabled="true"/>
      </td>
     </tr>
     
 
    </table> 
   </form>
  </center>
 </body>
</html>


JAVA 全系列/第五阶段:Web全栈开发基础与Vue/Javascript 语言(旧) 23418楼

一、压缩文件

mapperdemo.zip

二、报错截图,老师帮我看一下这怎么弄

blob.png

JAVA 全系列/第六阶段:项目管理与SSM框架/Mybatis 23421楼

ssm_rbac.zip

log.txt

这个项目视频里是在eclipse上运行的,我在idea上试了一直报错,应该和tomcat服务器有点关系

老师有空能远程给我看看嘛

JAVA 全系列/第六阶段:项目管理与SSM框架/RBAC实战 23422楼

log.txt

这边连接数据库一直不成功,这个报错信息也看不懂

项目我就不发了就是老师给的样例

JAVA 全系列/第十一阶段:权限控制与安全认证/Shiro(旧) 23423楼
JAVA 全系列/第六阶段:项目管理与SSM框架/Mybatis 23428楼
JAVA 全系列/第十八阶段:亿级高并发电商项目_架构/编码(旧)/电商:使用Solr实现数据搜索 23429楼

<div class="white-nav">
    <div class="white-nav-bar">
        <div class="bar-left">
            <a href="#">
                <img  class="mi-logo"src="images/mi-logo.png" alt="">
                <img  class="mi-home" src="images/mi-home.png" alt="">
            </a>
        </div>
        <div class="bar-center">
            <ul>
                <li><a href="#">小米手机
                <div class="list">
                    <div class="list-center">
        <ul>
            <li>
                <a href="#"><div class="img-box"><img src="images/3b19bf0e7e599c1bbbce510fb0dbc8bc.jpg" alt="">
                </div>
                    <p class="name1">小米10S</p>
                    <p class="price1">3299元起</p></a>
            </li>
            <li><a href="#"><div class="img-box"><img src="images/3b19bf0e7e599c1bbbce510fb0dbc8bc.jpg" alt="">
            </div>
                <p class="name1">小米10S</p>
                <p class="price1">3299元起</p></a></li>
            <li><a href="#"><div class="img-box"><img src="images/3b19bf0e7e599c1bbbce510fb0dbc8bc.jpg" alt="">
            </div>
                <p class="name1">小米10S</p>
                <p class="price1">3299元起</p></a></li>
            <li><a href="#"><div class="img-box"><img src="images/3b19bf0e7e599c1bbbce510fb0dbc8bc.jpg" alt="">
            </div>
                <p class="name1">小米10S</p>
                <p class="price1">3299元起</p></a></li>
            <li><a href="#"><div class="img-box"><img src="images/3b19bf0e7e599c1bbbce510fb0dbc8bc.jpg" alt="">
            </div>
                <p class="name1">小米10S</p>
                <p class="price1">3299元起</p></a></li>
            <li class="last-list"><a href="#"><div class="img-box"><img src="images/3b19bf0e7e599c1bbbce510fb0dbc8bc.jpg" alt="">
            </div>
                <p class="name1">小米10S</p>
                <p class="price1">3299元起</p></a>
            </li>
        </ul>
    </div>
    </div>
                </a></li>
.white-nav{
    width: 1423px;
    height: 100px;
    background-color: #ffffff;
    position: relative;

}
.white-nav-bar{
    width: 1226px;
    height: 100%;
    margin: 0 auto;
}
.bar-left{
    width: 55px;
    height: 55px;
    background-color: #ff6700;
    margin-top: 22.5px;
    float:left;
    position: relative;
    overflow: hidden;

}
.bar-center{
    width: 875px;
    height: 100%;
    float: left;
    line-height: 100px;

}
.bar-right{
    height: 100px;
    width: 296px;
    position: relative;
    float: left;
}
.bar-center>ul{
    margin-left: 179px;

}
.bar-center li{
    padding: 0 10px;
    float: left;


}
.bar-center>ul>li>a{
    color: #333333;
}
.bar-center>ul>li>a:hover{
    color: #ff6700;
}
.mi-home{
    width: 100%;
    position: absolute;
    top: 0;
    left: 100%;
}
.mi-logo{
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.bar-left:hover .mi-logo{
    left: -100%;
}
.bar-left:hover .mi-home{
    left: 0;
}
.bar-left img{
    transition: all .2s;
}
.list{
    width: 1423px;
    height: 0;
    background-color: #fff;
    position: absolute;
    left: 40px;
    top: 100px;
    box-shadow: 0 3px 4px rgba(0,0,0,.2);
    transition: all .2s;
    overflow: hidden;
    float: left;



}
.list-center{
    width: 1226px;
    height: 100%;
    position: absolute;
    left: 50%;
    margin-left: -613px;
    float: left;
}
.list-center li{
    width: 204px;
    padding: 0;
}
.img-box{
    width: 100%;
    height: 110px;
    border-right: 1px solid #eee;
    box-sizing: border-box;
    margin-top: 35px;
    margin-bottom: 16px;
}
.img-box img{
    height: 100%;
}
.list-center p{
    font-size: 12px;
    line-height: 20px;
}
.last-list .img-box{
  border-right: none ;
}
.name1{
    color: #333;
}
.price1{
    color: #ff6700;
}
.bar-center li:hover .list{
    height: 229px;
    border-top: 1px solid rgba(224,224,224,.6);

}
.bar-right{
    height: 100px;
    position: relative;
}
.bar-right input{
    width: 244px;
    height: 50px;
    border: 1px solid #e0e0e0;
    padding: 0 10px;
    box-sizing: border-box;
    outline: none;
    float: left;
    border-right: none;
    margin-top: 25px;

}
.bar-right>button{
    width: 52px;
    height: 50px;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    float: left;
    margin-top: 25px;

}
.bar-right input:focus{
    border-color: #ff6700;
}
.bar-right input:focus~.iconfont{
    border-color: #ff6700;
}
.bar-right>button:hover{
    background-color: #ff6700;
    color: #fff;
}

.text-list{
    width: 243px;
    height: 0;
    border-top: none;
    position: absolute;
    top: 75px;
    left: 0;
    z-index: 990;
    background-color: #fff;
}
.bar-right input:focus+.text-list{
    height: 240px;
    border: 1px solid #ff6700;
    border-top: none;
}

老师我想问问为什么我的list显示不了100%的宽度

WEB前端全系列/第一阶段:HTML5+CSS3模块/CSS3新特性 23430楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

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