我有一个textbox
,当我用鼠标滚轮向下滚动表单并用鼠标点击文本框时,它会停止滚动。
有没有办法避免这种情况?
答案 0 :(得分:0)
答案 1 :(得分:0)
如果您不想关注TextBox
,那么您需要一些解决方案
ReadOnly
属性设置为True 如果您以编程方式执行此操作,则无法在TextBox
中输入文本。但是,仍然可以单击它,如果单击它,您将看到闪烁的光标(不知道英文名称)。当移动器悬停它时,它将变成一个光标。
这意味着此选项允许关注控件,但无法输入数据。
Enabled
属性设置为False 同样,无法输入任何数据。此外,无法单击它,如果将鼠标悬停在光标上,光标也不会改变。
这意味着此选项不允许关注控件。
Label
如果没有人能够在您的TextBox
中插入数据,那么最好在Label
放置Label
。如果您选择选项1或2,那是因为在某些时候您可能允许用户更改其中的文本。但如果它只能由程序修改,#!/usr/bin/python
import pygame
pygame.init()
window=pygame.display.set_mode([500,500])
pygame.display.set_caption("Drop")
clock = pygame.time.Clock()
game_running=True
y=0;yy=1
accy = [0,0,0,0,0,0,0,0]
while game_running:
for event in pygame.event.get():
if event.type==pygame.QUIT:
game_running=False
window.fill((0,0,0))
x=0
pygame.draw.rect(window, (101,201,200), [15+x,0+y+accy[0],50,50],0)
x+=60
if not accy[0]==450:
accy[0]+=1
pygame.draw.rect(window, (101,201,200), [15+x,0+y+accy[1],50,50],0)
x+=60
if accy[0] >= 50 and not accy[1] == 450:
accy[1]+=1
pygame.draw.rect(window, (101,201,200), [15+x,0+y+accy[2],50,50],0)
x+=60
if accy[1] >= 50 and not accy[2] == 450:
accy[2]+=1
pygame.draw.rect(window, (101,201,200), [15+x,0+y+accy[3],50,50],0)
x+=60
if accy[2] >= 50 and not accy[3] == 450:
accy[3]+=1
pygame.draw.rect(window, (101,201,200), [15+x,0+y+accy[4],50,50],0)
x+=60
if accy[3] >= 50 and not accy[4] == 450:
accy[4]+=1
pygame.draw.rect(window, (101,201,200), [15+x,0+y+accy[5],50,50],0)
x+=60
if accy[4] >= 50 and not accy[5] == 450:
accy[5]+=1
pygame.draw.rect(window, (101,201,200), [15+x,0+y+accy[6],50,50],0)
x+=60
if accy[5] >= 50 and not accy[6] == 450:
accy[6]+=1
pygame.draw.rect(window, (101,201,200), [15+x,0+y+accy[7],50,50],0)
if accy[6] >= 50 and not accy[7] == 450:
accy[7]+=1
clock.tick(60)
pygame.display.flip()
就足够了。
标签上永远不允许对焦。
答案 2 :(得分:0)
好的,如果我理解正确的话,你要搜索的是在传递TextBox时保持鼠标滚动。这是对的吗?
我认为,有一种方法可以实现这一目标。但是此代码尚未经过测试,因此如果有效,请随时通知我。
IndexOf()
这样,当你的文本框捕获一个MouseWheel事件时,它会在表单上传递,它将处理它(我认为)。对不起,我现在没有机会测试它,但我相信这应该可以解决问题。