我遇到了wxPython的问题。我试图有一个没有可见滚动条的可滚动窗口。我仍然希望能够使用鼠标滚轮滚动以及使用我编写的键盘快捷键。
我有以下简化代码:
import wx
import wx.stc
app = wx.App(0)
frame = wx.Frame(None, wx.ID_ANY, "Sample Scroll pane")
textViewer = wx.stc.StyledTextCtrl(frame, wx.ID_ANY)
textViewer.Text = "1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14\n15\n16\n17\n18\n19\n20\n21\n22"
textViewer.SetUseVerticalScrollBar(False)
textViewer.ScrollLines(1)
frame.Show()
app.MainLoop()
我正在使用“ScrollLines”功能以编程方式滚动我的文本。在Windows机器上,这按预期工作并向下滚动一行。但是,在Ubuntu上,如果“SetUseVerticalScrollBar”为false,则文本不会滚动。
如何在以跨平台方式维护其功能的同时隐藏我的滚动条?
答案 0 :(得分:1)
ScrollToLine似乎在Windows和Linux上运行一致,因此您可以用以下内容替换ScrollLines调用:
first = textViewer.GetFirstVisibleLine()
textViewer.ScrollToLine(first + n)
其中n是向下滚动的行数。