Jenyayвиснет наверно потому, что LoadPage вызывается до вызова MainLoop
попробуй вызвать LoadPage на событие в меню например. Я вот так писАл:
# -*- coding:cp1251 -*-
import wx
import wx.html
image_dir = 'images/'
ID_LOAD_PAGE = wx.NewId()
ID_EXIT = wx.NewId()
MENU_CONTROLS = {
'Файл':(
[ID_LOAD_PAGE, True, '', 'Загрузить', 'Загрузить Google', 'Load'],
[None, False, '', '', '', ''],
[ID_EXIT, True, '', 'Выход', 'Закрытие приложения', 'OnClose'],
),
}
class MyHtmlFrame(wx.Frame):
def __init__(self, parent, title):
wx.Frame.__init__(self, parent, -1, title, size=(600,400))
self.menubar = wx.MenuBar()
self.CreateMenu()
self.SetMenuBar(self.menubar)
self.CreateStatusBar()
sizer = wx.BoxSizer()
self.html = wx.html.HtmlWindow(self)
sizer.Add(self.html, 1, wx.EXPAND|wx.ALL)
self.SetSizer(sizer)
if "gtk2" in wx.PlatformInfo:
self.html.SetStandardFonts()
self.html.SetRelatedFrame(self, self.GetTitle() + " -- %s")
self.html.SetRelatedStatusBar(0)
def Load(self, evt):
self.html.LoadPage("http://www.google.ru")
def CreateMenu(self):
for name in MENU_CONTROLS.keys():
menu = wx.Menu()
for id, bool, ico, short, long, func in MENU_CONTROLS[name]:
if id == None:
menu.AppendSeparator()
continue
item = wx.MenuItem(menu, id, short, long )
if ico != '':
bmp = wx.Image(image_dir+ico,wx.BITMAP_TYPE_ICO).ConvertToBitmap()
item.SetBitmap(bmp)
item.Enable(bool)
menu.AppendItem(item)
exec("self.Bind(wx.EVT_MENU, self."+func+", item)")
self.menubar.Append(menu, name)
def OnClose(self, evt):
self.Destroy()
app = wx.PySimpleApp()
frm = MyHtmlFrame(None, "Simple HTML Browser")
frm.Show()
app.MainLoop()
гугл успешно загружается :)