Search code examples
pythonwxpythonwxwidgetswxtextctrl

set text alignment of rich text ctrl


how to align text right and center because wx.TE_RIGHT and wx.TE_CENTER is not working in the code below

 import wx
 import wx.richtext as rtc
 class test(wx.Dialog): 
    def __init__(self, *args, **kwds): 
       wx.Dialog.__init__(self, *args, **kwds) 
       self.V=rtc.RichTextCtrl(self, size=(400,90),style=wx.TE_RIGHT|rtc.RE_MULTILINE)
 if __name__ == '__main__': 
  app = wx.App() 
  dialog = test(None, -1) 

  dialog.Show() 
  app.MainLoop() 

Solution

  • Instead of trying to apply both styles I moved the center styling to a new line of code using ApplyAlignmentToSelction() from this documentation. http://xoomer.virgilio.it/infinity77/wxPython/richtext/wx.richtext.RichTextAttr.html

    import wx
    import wx.richtext as rtc
    class test(wx.Dialog):
        def __init__(self, *args, **kwds): 
            wx.Dialog.__init__(self, *args, **kwds) 
            self.V=rtc.RichTextCtrl(self, size=(400,90),style=rtc.RE_MULTILINE)
            self.V.ApplyAlignmentToSelection(rtc.TEXT_ALIGNMENT_CENTER)
    
    if __name__ == '__main__': 
        app = wx.App() 
        dialog = test(None, -1) 
        dialog.Show() 
        app.MainLoop()