当我通过“tab”键导航出组合框时,前台设置会丢失。当在组合框中使用“左”和“右”箭头键时也会发生这种情况。当我用“按钮”替换“条目”小部件时,不会出现此问题。我找不到任何此类问题的发布。如何解决这个问题?这是示例代码。
当选择“无效”时,前景色应为“红色”,直到选择“有效”。但事实并非如此。附截图。

但是,当仅使用鼠标时,它可以工作。所以我怀疑它与组合框、条目、tab键组合有关。
环境:Python 3.9.6 Windows 21H1(内部版本19043.1165)
import tkinter as objTK
from tkinter import ttk as objTTK
# Combobox dropdown event handler
def HandlerValidate(objEvent):
strValue = vCombobox.get()
if strValue == "Invalid":
objStyle = objTTK.Style()
objStyle.map("myCombobox.TCombobox", selectforeground=[('readonly', '!focus', 'red'), \
('readonly', 'focus', 'red')])
print("Invalid")
else:
objStyle = objTTK.Style()
objStyle.map("myCombobox.TCombobox", selectforeground=[('readonly', '!focus', 'black'), \
('readonly', 'focus', 'white')])
print("Valid")
# End of if
# End of HandlerValidate()
objWindow = objTK.Tk()
objStyle = objTTK.Style()
objStyle.theme_use("clam")
# Set black foreground for entry of combobox
objStyle.map("TCombobox", …Run Code Online (Sandbox Code Playgroud) 有人可以提供类 FilterCriteriaBuilder 用法的示例以按条件(而不是按值)设置过滤器吗?当我搜索时,我根本找不到任何示例。我有一个按值设置过滤器的工作代码。我想根据日期值设置过滤器。
我无法使以下过滤器公式起作用。请注意,我试图引用工作表“数据”并将它们过滤到另一个工作表中。我收到错误消息,说没有匹配项。
=FILTER(Data!A3:Data!J, ARRAYFORMULA(REGEXMATCH(Data!J3:Data!J, ".*km.*")))
Run Code Online (Sandbox Code Playgroud)
但是,当我将其插入“数据”表时,上述公式有效。请注意“数据!” 被删除,因为它在同一张纸上。
=FILTER(A3:J, ARRAYFORMULA(REGEXMATCH(J3:J, ".*km.*")))
Run Code Online (Sandbox Code Playgroud)
我尝试使用以下集合,结果相同。
=FILTER(A3:J, REGEXMATCH(J3:J, ".*km.*"))
=FILTER(Data!A3:Data!J, REGEXMATCH(Data!J3:Data!J, ".*km.*"))
Run Code Online (Sandbox Code Playgroud)
我将“数据”表中的日期、数字过滤到我的过滤表中没有问题。它仅适用于“文本包含”条件。任何解决此问题的帮助表示赞赏。