代码拉取完成,页面将自动刷新
import sys
import pygame
pygame.init()
icon = pygame.image.load("进制转换图标.ico")
pygame.display.set_icon(icon)
clock = pygame.time.Clock()
screen = pygame.display.set_mode((1200, 900))
screen.fill([255, 255, 255])
pygame.display.set_caption("进制转换器")
FONT0 = pygame.font.Font("VINERITC.TTF", 48)
FONT1 = pygame.font.Font("kaiu.ttf", 48)
FONT2 = pygame.font.Font("VINERITC.TTF", 24)
FONT3 = pygame.font.Font("VINERITC.TTF", 36)
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
text = FONT0.render("", True, (128, 255, 128), None)
screen.blit(text, (0, 44))
for i in range(6):
for j in range(4):
pygame.draw.rect(screen, (128, 255, 128), ((150*i+50, 100*j+500), (100, 50)), 0)
text0 = FONT0.render("0", True, (255, 128, 255), None)
screen.blit(text0, (90, 494))
text1 = FONT0.render("1", True, (255, 128, 255), None)
screen.blit(text1, (240, 494))
text2 = FONT0.render("2", True, (255, 128, 255), None)
screen.blit(text2, (380, 494))
text3 = FONT0.render("3", True, (255, 128, 255), None)
screen.blit(text3, (530, 494))
text4 = FONT0.render("4", True, (255, 128, 255), None)
screen.blit(text4, (90, 594))
text5 = FONT0.render("5", True, (255, 128, 255), None)
screen.blit(text5, (240, 594))
text6 = FONT0.render("6", True, (255, 128, 255), None)
screen.blit(text6, (385, 594))
text7 = FONT0.render("7", True, (255, 128, 255), None)
screen.blit(text7, (535, 594))
text8 = FONT0.render("8", True, (255, 128, 255), None)
screen.blit(text8, (90, 694))
text9 = FONT0.render("9", True, (255, 128, 255), None)
screen.blit(text9, (240, 694))
textA = FONT0.render("A", True, (255, 128, 255), None)
screen.blit(textA, (385, 694))
textB = FONT0.render("B", True, (255, 128, 255), None)
screen.blit(textB, (535, 694))
textC = FONT0.render("C", True, (255, 128, 255), None)
screen.blit(textC, (85, 794))
textD = FONT0.render("D", True, (255, 128, 255), None)
screen.blit(textD, (235, 794))
textE = FONT0.render("E", True, (255, 128, 255), None)
screen.blit(textE, (385, 794))
textF = FONT0.render("F", True, (255, 128, 255), None)
screen.blit(textF, (535, 794))
textBD = FONT1.render("B→D", True, (255, 128, 255), None)
screen.blit(textBD, (652, 502))
textDB = FONT1.render("D→B", True, (255, 128, 255), None)
screen.blit(textDB, (652, 602))
textBH = FONT1.render("B→H", True, (255, 128, 255), None)
screen.blit(textBH, (652, 702))
textHB = FONT1.render("H→B", True, (255, 128, 255), None)
screen.blit(textHB, (652, 802))
textDH = FONT1.render("D→H", True, (255, 128, 255), None)
screen.blit(textDH, (802, 502))
textHD = FONT1.render("H→D", True, (255, 128, 255), None)
screen.blit(textHD, (802, 602))
text000 = FONT0.render("000", True, (255, 128, 255), None)
screen.blit(text000, (818, 694))
textCLEAR = FONT3.render("Clear", True, (255, 128, 255), None)
screen.blit(textCLEAR, (802, 800))
x = 0
y = 0
s = ""
n = 0
t = 0
while True:
clock.tick(10)
textSHUIYIN = pygame.font.Font("kaiu.ttf", 24).render("@百家号/水晶兰解说", True, (128, 128, 255), None)
screen.blit(textSHUIYIN, (965, 860))
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
elif event.type == pygame.MOUSEBUTTONDOWN:
pygame.mouse.get_pos()
x, y = pygame.mouse.get_pos()
if 50 < x < 150 and 500 < y < 550:
s = s+"0"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 200 < x < 300 and 500 < y < 550:
s = s+"1"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 350 < x < 450 and 500 < y < 550:
s = s+"2"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 500 < x < 600 and 500 < y < 550:
s = s+"3"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 50 < x < 150 and 600 < y < 650:
s = s+"4"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 200 < x < 300 and 600 < y < 650:
s = s+"5"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 350 < x < 450 and 600 < y < 650:
s = s+"6"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 500 < x < 600 < y < 650:
s = s+"7"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 50 < x < 150 and 700 < y < 750:
s = s+"8"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 200 < x < 300 and 700 < y < 750:
s = s+"9"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 350 < x < 450 and 700 < y < 750:
s = s+"A"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 500 < x < 600 and 700 < y < 750:
s = s+"B"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 50 < x < 150 and 800 < y < 850:
s = s+"C"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 200 < x < 300 and 800 < y < 850:
s = s+"D"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 350 < x < 450 and 800 < y < 850:
s = s+"E"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 500 < x < 600 and 800 < y < 850:
s = s+"F"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 650 < x < 750 and 500 < y < 550:
if not ("2" in s or "3" in s or "4" in s or "5" in s or "6" in s or "7" in s or "8" in s or "9" in s or "A" in s or "B" in s or "C" in s or "D" in s or "E" in s or "F" in s):
n = len(s)
t = 0
for m in range(n):
o = int(str(s[n-m-1:n-m]))
t = t+2**m*o
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(str(t)) <= 32:
text = FONT0.render(str(t), True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(str(t), True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 600 < y < 650 < x < 750:
if not ("A" in s or "B" in s or "C" in s or "D" in s or "E" in s or "F" in s):
if s == "":
t = "0"
elif s == "0":
t = "0"
else:
n = int(s)
t = ""
while n >= 1:
o = n % 2
n = n // 2
t = str(o)+str(t)
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(t) <= 32:
text = FONT0.render(t, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(t, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 650 < x < 750 and 700 < y < 750:
if not ("2" in s or "3" in s or "4" in s or "5" in s or "6" in s or "7" in s or "8" in s or "9" in s or "A" in s or "B" in s or "C" in s or "D" in s or "E" in s or "F" in s):
o = len(s) % 4
if o == 1:
s = "000"+s
if o == 2:
s = "00"+s
if o == 3:
s = "0"+s
n = len(s) // 4
t = ""
for m in range(n):
p = str(s[4*n-4*m-4:4*n-4*m])
q = ""
if p == "0000":
q = "0"
elif p == "0001":
q = "1"
elif p == "0010":
q = "2"
elif p == "0011":
q = "3"
elif p == "0100":
q = "4"
elif p == "0101":
q = "5"
elif p == "0110":
q = "6"
elif p == "0111":
q = "7"
elif p == "1000":
q = "8"
elif p == "1001":
q = "9"
elif p == "1010":
q = "A"
elif p == "1011":
q = "B"
elif p == "1100":
q = "C"
elif p == "1101":
q = "D"
elif p == "1110":
q = "E"
elif p == "1111":
q = "F"
t = q+t
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(t) <= 32:
text = FONT0.render(t, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(t, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 650 < x < 750 and 800 < y < 850:
n = len(s)
t = ""
for m in range(n):
p = str(s[n-m-1:n-m])
q = ""
if p == "0":
q = "0000"
elif p == "1":
q = "0001"
elif p == "2":
q = "0010"
elif p == "3":
q = "0011"
elif p == "4":
q = "0100"
elif p == "5":
q = "0101"
elif p == "6":
q = "0110"
elif p == "7":
q = "0111"
elif p == "8":
q = "1000"
elif p == "9":
q = "1001"
elif p == "A":
q = "1010"
elif p == "B":
q = "1011"
elif p == "C":
q = "1100"
elif p == "D":
q = "1101"
elif p == "E":
q = "1110"
elif p == "F":
q = "1111"
t = q+t
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(t) <= 32:
text = FONT0.render(t, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(t, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 800 < x < 900 and 500 < y < 550:
if not ("A" in s or "B" in s or "C" in s or "D" in s or "E" in s or "F" in s):
if s == "":
t = "0"
elif s == "0":
t = "0"
else:
n = int(s)
t = ""
while n >= 1:
o = n % 16
if o == 0:
o = "0"
elif o == 1:
o = "1"
elif o == 2:
o = "2"
elif o == 3:
o = "3"
elif o == 4:
o = "4"
elif o == 5:
o = "5"
elif o == 6:
o = "6"
elif o == 7:
o = "7"
elif o == 8:
o = "8"
elif o == 9:
o = "9"
elif o == 10:
o = "A"
elif o == 11:
o = "B"
elif o == 12:
o = "C"
elif o == 13:
o = "D"
elif o == 14:
o = "E"
elif o == 15:
o = "F"
n = n // 16
t = o+str(t)
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(t) <= 32:
text = FONT0.render(t, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(t, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 800 < x < 900 and 600 < y < 650:
n = len(s)
t = 0
for m in range(n):
o = str(s[n-m-1:n-m])
if o == "0":
o = "0"
elif o == "1":
o = "1"
elif o == "2":
o = "2"
elif o == "3":
o = "3"
elif o == "4":
o = "4"
elif o == "5":
o = "5"
elif o == "6":
o = "6"
elif o == "7":
o = "7"
elif o == "8":
o = "8"
elif o == "9":
o = "9"
elif o == "A":
o = "10"
elif o == "B":
o = "11"
elif o == "C":
o = "12"
elif o == "D":
o = "13"
elif o == "E":
o = "14"
elif o == "F":
o = "15"
t = t+16**m*int(o)
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(str(t)) <= 32:
text = FONT0.render(str(t), True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(str(t), True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 800 < x < 900 and 700 < y < 750:
s = s+"000"
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
if len(s) <= 32:
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
else:
text = FONT2.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 60))
elif 800 < x < 900 and 800 < y < 850:
s = ""
pygame.draw.rect(screen, (255, 128, 255), ((0, 50), (1200, 50)), 0)
text = FONT0.render(s, True, (128, 255, 128), None)
screen.blit(text, (0, 44))
pygame.display.flip()
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。