【问题标题】:StyledTextCtrl Styling Mask, what is it?StyledTextCtrl 样式蒙版,它是什么?
【发布时间】:2012-05-13 09:34:34
【问题描述】:

我正在创建自定义词法分析器。然后我发现 StyledTextCtrl.StartStyling() 是开始将样式应用于文本的方法,但我不知道掩码是什么。我输入了StartStyling.__doc__ 并得到了这个

StyledTextCtrl.StartStyling(self, int pos, int mask)
Set the current styling position to pos and the styling mask to mask.
The styling mask can be used to protect some bits in each styling byte from modification.

这里的样式掩码是如何应用的以及我们应该给什么掩码编号?

【问题讨论】:

  • 您能否提供更多背景信息?一些代码或一些关于您为什么要使用此方法的信息会有所帮助。
  • 添加了背景信息。
  • 老实说,我今天花了几个小时试图找到一些教程,任何帮助我了解如何使用 StyledTextCtrl 的教程,但我找不到任何教程!你能解释一下你打算做什么吗?或许我可以帮你找到替代方案?
  • 是的,很难找到示例或教程。我自己在做这件事时遇到了很多麻烦。最接近如何使用 StyledTextCtrl 的教程是 wxPython 2.8 Application Development Cookbok。但这本身并没有解释 StartStyling 中的掩码是如何工作的,以及我们如何确定应该使用哪个整数作为掩码。

标签: python wxpython wxwidgets wxstyledtextctrl


【解决方案1】:

这个页面解释了大部分内容:

http://www.yellowbrain.com/stc/styling.html

整数参数 pos 设置您想要开始的位置 造型操作。整数参数掩码表示哪些位 要修改的样式字节。

来自 Scintilla 文档:蒙版允许进行样式设置 多遍,例如,在一个 初始通过以确保快速看到代码文本,并且 正确,然后第二次慢速通过,检测语法错误和 使用指标来显示它们的位置。例如,与 5 个样式位和 3 个指示位的标准设置,您可以使用 如果您正在设置文本样式并且没有设置,则掩码值为 31 (0x1f) 想要更改指标。

您可能希望掩码为 0x1f(低 5 位),这是约定俗成的。低 5 位用于样式(最多 32 种不同的样式),而高 3 位用于指标。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-28
    • 1970-01-01
    • 1970-01-01
    • 2010-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多