直接上代码:

import pygame

import sys

pygame.init()

screen = pygame.display.set_mode((10,10),0)

screen = pygame.display.set_mode((800,800),0)

screen.fill((255,255,255))

pygame.display.update()

while True:

for event in pygame.event.get():

if event.type == pygame.QUIT:

pygame.quit()

sys.exit(0)

方案就是,首先启动一个10*10(1*1也行)的小窗口,然后立即启动正常大小窗口。这样几乎完全避免看见启动黑屏的情况。当系统运行缓慢你可能会看到一个小窗口一闪变成了大窗口。

效果如下:https://www.zhihu.com/video/1184551647086329856

我在树莓派上也进行了多次实验是了,这种效果还可以接受,树莓派上也基本感知不到小窗口的存在。

其实黑屏我是可以忍受,主要是帮知乎好友解决他的问题,顺便自己研究了一下。

还有另一个方案就是结合tkinter,具体代码如下:

import pygame,random

import tkinter as tk

from tkinter import *

import os

root = tk.Tk()

embed = tk.Frame(root, width = 500, height = 500) #creates embed frame for pygame window

embed.focus_set()

embed.grid(column=0,row=0) # Adds grid

uiwin = tk.Frame(root, width = 400, height = 100)

uiwin.grid(row=1,column=0)

os.environ['SDL_WINDOWID'] = str(embed.winfo_id())

os.environ['SDL_VIDEODRIVER'] = 'windib'

pygame.init()

screen = pygame.display.set_mode((500,500))

screen.fill(pygame.Color(255,255,255))

pygame.display.update()

def handle(event):

if embed is not root.focus_get():

embed.focus_set()

embed.bind('',handle)

def game():

if embed is root.focus_get():

for event in pygame.event.get():

if event.type == pygame.KEYDOWN:

r = random.randint(0,255)

g = random.randint(0,255)

b = random.randint(0,255)

screen.fill(pygame.Color(r,g,b))

pygame.display.update()

root.after(1000//60,game)

def draw():

pygame.draw.circle(screen, (0,0,0), (250,250), 125)

pygame.display.update()

button1 = Button(uiwin,text = 'Draw', command=draw)

button1.grid(row=0,column=1)

entry1 = Entry(uiwin,width=45,font=('StSong',14),foreground='green')

entry1.grid(row=0,column=0)

root.after(0,game)

root.mainloop()

python打开摄像头黑屏怎么办_临时解决pygame启动时黑屏问题相关推荐

  1. 解决lightdm启动时黑屏的问题

    sudo rm -r /var/lib/lightdm/* sudo service lightdm restart

  2. 真正超简单解决App启动时白屏问题

    相信不少的童鞋都遇到过在开发App 的时候打开应用的时候,会有白屏的现象,网上也有不少类似的解决方案. 修改 application 的 theme ,然后在style里面添加一个背景 将 theme ...

  3. 解决App启动时白屏的问题

    第一次 03-25 11:02:34.431 6908-6908/com.newenergyjinfu.jytz D/App: before_onCreate: 239 03-25 11:02:34. ...

  4. python图色检测_利用python打开摄像头及颜色检测方法

    最近两周由于忙于个人项目,一直未发言了,实在是太荒凉了....,上周由于项目,见到Python的应用极为广泛,用起来也特别顺手,于是小编也开始着手学习Python,-下面我就汇报下今天的学习成果吧 小 ...

  5. android启动画面白屏,Android app启动时黑屏或者白屏的原因及解决办法

    1.产生原因 其实显示黑屏或者白屏实属正常,这是因为还没加载到布局文件,就已经显示了window窗口背景,黑屏白屏就是window窗口背景. 示例: 2.解决办法 通过设置设置Style (1)设置背 ...

  6. 临时解决新款macbookpro m1pro刘海屏遮住部分菜单栏应用的问题

    临时解决新款macbookpro m1pro刘海屏遮住部分菜单栏应用的问题 背景:新买的2021款MacBook Pro m1pro,有刘海屏,会遮住部分菜单,我还以为是软件不兼容.目前官方还未有解决 ...

  7. Win7启动时黑屏很久才进入桌面的原因

    Win7启动时黑屏很久才进入桌面,处理步骤: 可能有可能中了木马,把杀毒软件升级到最新版,进行杀毒 右击我的电脑-> 管理 点击菜单栏上的查看 -> 显示隐藏的设备 点击设备管理器 -&g ...

  8. 解决VirtualBox 上的XP 关机时重启 , 启动时蓝屏 ,点击电源选项蓝屏

    三个问题一次性解决. 启动时的蓝屏显示错误信息是: STOP 0x000000CE (...) DRIVER_UNLOADED_WITHOUT_CANCELLING_PENDING_OPERATION ...

  9. 如何解决页面刷新时白屏的问题?

    如何解决页面刷新时白屏的问题? this.isRouterAlive = false this.$nextTick(function () {this.isRouterAlive = true;//写 ...

最新文章

  1. 实战清除电脑上恶意弹出广告窗口
  2. 2016-10-26随笔
  3. JuPyter(IPython) Notebooks中使用pip安装Python的模块
  4. grep/egrep和正则表达式汇总
  5. SpringBoot整合Redis(单机/哨兵/集群)
  6. 数据库设计 Step by Step (2)——数据库生命周期
  7. 一行Python代码能干什么?惊了!
  8. linux系统中怎么设置网络,vmware中linux怎么设置网络
  9. android:src app:srccompat,android – 数据绑定与srcCompat
  10. python第三方模块下载方法(最详最细)
  11. C语言运算符优先级表详解
  12. 关于csdn 博客图片无法加载的问题!
  13. 将java 文件夹里面的.java 文件 拷贝到temp文件夹下,并且修改后缀名为.txt
  14. The superclass javax.servlet.http.HttpServlet was not found on the Java Build Path
  15. 程序员必备的5个工作技能
  16. day 03 字符串
  17. 原生JS实现淡出淡入效果
  18. Android高级工程师每日面试题精选,offer拿到手软
  19. 防止微机室教师机对学生机的控制
  20. jenkin+docker 构建项目

热门文章

  1. 心悬(香港海洋公园之圣诞篇)
  2. 解决方案:stderr: Permission denied (publickey). fatal: Could not read from remote repository
  3. 学编程前需要了解计算机的知识吗,小白入门编程需要了解哪些知识?
  4. python头像判断男女_Python爬微信好友头像,性别,所在地区
  5. EXCEL-VBA:单元格粘贴成数值(2种方法)
  6. 国际奥林匹克日 | 和TcaplusDB君一起动起来!
  7. idea为什么HTML背景变成了黄色的,IDEA强迫症设置背景及取消高亮的屎黄色
  8. 河北石家庄24小时图文快印店地址在哪里?
  9. 我常用的firefox几款插件
  10. latex页眉页脚设置