Не могу заставить tinyMCE работать в элементе управления wxPython wx.HTML2: - PullRequest
0 голосов
/ 04 декабря 2018

Демонстрационный код для tinyMCE отлично работает на веб-странице в IE / Chrome

<!DOCTYPE html>
<html>
<head>
  <script src='http://cloud.tinymce.com/5-testing/tinymce.min.js'></script>
  <script>
  tinymce.init({
    selector: '#mytextarea'
  });
  </script>
</head>

<body>
<h1>TinyMCE Quick Start Guide</h1>
  <form method="post">
    <textarea id="mytextarea">Hello, World!</textarea>
  </form>
</body>
</html>

Но при попытке загрузить в wxPython элемент управления wx.HTML2 загружается только текстовая часть, а функция редактора - нетРабота??

wxPython code

import wx, os
import wx.html2

class MyBrowser(wx.Dialog):
  def __init__(self, *args, **kwds):
    wx.Dialog.__init__(self, *args, **kwds)
    sizer = wx.BoxSizer(wx.VERTICAL)
    self.browser = wx.html2.WebView.New(self)
    sizer.Add(self.browser, 1, wx.EXPAND, 10)
    self.SetSizer(sizer)
    self.SetSize((700, 700))
    self.Bind(wx.html2.EVT_WEBVIEW_NAVIGATING, self.OnNavigate,self.browser)
    self.Bind(wx.html2.EVT_WEBVIEW_LOADED, self.OWVLoaded,self.browser)

  CATCH_STRING = "catch-this-click:"

  def OnNavigate(self,evt):
    targetUrl=evt.GetURL()
    #print "Navigate Target: ",targetUrl

    if self.CATCH_STRING in targetUrl:
      passed_data = targetUrl.split(self.CATCH_STRING,2)[1]
      print ("Click Caught!  Data = ",passed_data)
      evt.Veto() # prevent actual navigation.

    else:
      pass # let it do the normal thing...

  def OWVLoaded(self,evt):
      # the document is now loaded
      self.browser.RunScript("<script>https://cdn.ckeditor.com/ckeditor5/11.1.1/inline/ckeditor.js</script>")
      self.browser.RunScript('alert("Py - OWVloaded; got here");')




if __name__ == '__main__':
  app = wx.App()
  dialog = MyBrowser(None, -1)
#  url = os.path.join(os.getcwd(), 'test2.html')
  url = os.path.join(os.getcwd(), 'tinyMCE_test.html')
  print ("Py - loading url ",url)
  dialog.browser.LoadURL(url)
#  dialog.browser.LoadURL('http://www.themaninblue.com/experiment/widgEditor/')
  dialog.Show()
  app.MainLoop(

Он загрузит файл и отобразит, но редактор не работает.

У меня такая же проблема с CKEditor;

Python 3.6, wxPython 4.0.1 и Windows 10, 64-битная

Любая да. Я немного новичок, хотя у меня седые волосы (то, что осталось, то есть)

Уокер

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...