您現在的位置是:電腦技術吧?>? 組裝維修 ??>??初學者如何學化妝,計算機初學者入門教程??>??正文詳情

初學者如何學化妝,計算機初學者入門教程

撒代芹2019-11-16 18:40:50 人圍觀
簡介初學者輪滑視頻教程一般來說,大多數應用程序通過保持HTML的簡單性來解決大多數瀏覽器問題,或者換句話說,通過基于最低的通用特性進行編寫。然而,即便如此,仍然存在字體和布

通常,大多數應用程序通過保持 HTML 簡單來解決大多數瀏覽器問題 — 或者說,根據最低共同特性來編寫。

然而,即便如此,也仍然存在字體和布局的問題,發行新瀏覽器和升級現有瀏覽器時,也免不了測試應用程序的痛苦。

替代方案 — 只支持一種瀏覽器 — 通常不是一種用戶友好的解決方案。

  明顯的解決方案是在應用程序中嵌入自己的表現 HTML 的窗口構件。

當然,從頭開始編寫這樣的窗口構件工作量很大,因此,求助于預先封裝的解決方案好象是合理的。

  商界有許多選擇及幾個開放源碼軟件包(參閱本文后面的 參考資料)。

本文將向您顯示如何以 Python 作為綁定的語言選擇(也支持 C 、Perl 和其它語言)使用作為 wxWindows 軟件包一部分分發的 wxHtml 窗口構件。

  雖然沒有任何 wxPython 經驗而熟諳 Python 的開發人員應該能夠從頭開始,但本文還是假定您具有基本的 wxPython 知識。

在本文中,我們將創建一個獨立的瀏覽器應用程序,同時,保持體系結構足夠簡單以致將瀏覽器功能遷移到現有的應用程序中是一項簡單的任務。

  世界上最基本的瀏覽器  第一步是組裝支持使用 wxHtml 窗口構件的應用程序所必需的最少代碼。

下列代碼實現用 wxHtml 窗口構件作為其主窗口內容的基本 wxPython 應用程序。

  清單 1. 基本示例瀏覽器代碼  from wxPython.wx import *  from wxPython.html import *  import os,sys  class exHtmlWindow(wxHtmlWindow):  def __init__(self, parent, id, frame):  wxHtmlWindow.__init__(self,parent,id)  class exHtmlPanel(wxPanel):  def __init__(self, parent, id, frame):  wxPanel.__init__(self,parent,-1)  self.html = exHtmlWindow(self, -1, frame)  self.box = wxBoxSizer(wxVERTICAL)  self.box.Add(self.html, 1, wxGROW)  self.SetSizer(self.box)  self.SetAutoLayout(true)  class exFrame (wxFrame):  def __init__(self, parent, ID, title):  wxFrame.__init__(self,parent,ID,title,wxDefaultPosition,wxSize(600,750))  panel = exHtmlPanel(self, -1, self)  class exApp(wxApp):  def OnInit(self):  frame = exFrame(NULL, -1, Example Browser)  frame.Show(true)  self.SetTopWindow(frame)  return true  app = exApp(0)  app.MainLoop()  假定您已正確安裝 wxPython,那么在 Python 解釋器中運行上述代碼將產生一個具有空的白面板(wxHtml 窗口構件)的大窗口。

如果出現任何語法錯誤,請檢查空格問題 — 尤其是如果您將代碼剪切粘貼到解釋器或編輯器的情況。

如果 Python 解釋器顯示無法導入 wxPython,請檢查安裝以確保安裝正確。

  當然,一啟動該瀏覽器,立刻出現的是:我們缺少某些東西 ... 例如裝入頁面的機制。

對于某些應用程序,這一非常基本的設置實際上可能已經夠了 如果您已知道您要交付什么,那么用戶就無需選擇自己的頁面。

簡單的更改是向 exHtmlPanel 傳遞額外的參數,那就是您想訪問的頁面:  清單 2. 修改 exHtmlPanel 以裝入頁面  class exHtmlPanel(wxPanel):     def __init__(self, parent, id, frame, file):  wxPanel.__init__(self, parent, -1)  self.html = exHtmlWindow(self, -1, frame)  self.box = wxBoxSizer(wxVERTICAL)  self.box.Add(self.html, 1, wxGROW)  self.SetSizer(self.box)  self.SetAutoLayout(true)      self.html.LoadPage(file)  為了使之更獨立也為了使之更象瀏覽器,我們將擴展 ttHtmlPanel 類以添加一些執行標準瀏覽器任務的按鈕。

當然,如果您實際上是計劃構建一個真正的瀏覽器應用程序,那么在 GUI 設計和可用性方面您可能要考慮的比我們這里做的更多。

  清單 3. 修改 ttHtmlPanel 以添加按鈕  class ttHtmlPanel(wxPanel):  def __init__(self, parent, id, frame):  wxPanel.__init__(self, parent, -1)  self.frame = frame  self.cwd = os.path.split(sys.argv[0])[0]  if not self.cwd:  self.cwd = os.getcwd  self.html = ttHtmlWindow(self, -1, self.frame)  self.box = wxBoxSizer(wxVERTICAL)  self.box.Add(self.html, 1, wxGROW)  subbox = wxBoxSizer(wxHORIZONTAL)  btn = wxButton(self, 1202, Load File)  EVT_BUTTON(self, 1202, self.OnLoadFile)  subbox.Add(btn, 1, wxGROW | wxALL, 2)  btn = wxButton(self, 1203, Load Page)  EVT_BUTTON(self, 1203, self.OnLoadPage)  subbox.Add(btn, 1, wxGROW | wxALL, 2)  btn = wxButton(self, 1204, Back)  EVT_BUTTON(self, 1204, self.OnBack)  subbox.Add(btn, 1, wxGROW | wxALL, 2)  btn = wxButton(self, 1205, Forward)  EVT_BUTTON(self, 1205, self.OnForward)  subbox.Add(btn, 1, wxGROW | wxALL, 2)  self.box.Add(subbox, 0, wxGROW)  self.SetSizer(self.box)  self.SetAutoLayout(true)  def OnLoadPage(self, event):  dlg = wxTextEntryDialog(self, 'Location:')  if dlg.ShowModal() == wxID_OK:  self.destination = dlg.GetValue()  dlg.Destroy()  self.html.LoadPage(self.destination)  def OnLoadFile(self, event):  dlg = wxFileDialog(self, wildcard = '*.htm*', style=wxOPEN)  if dlg.ShowModal():  path = dlg.GetPath()  self.html.LoadPage(path)  dlg.Destroy()  def OnBack(self, event):  if not self.html.HistoryBack():  wxMessageBox(No more items in history!)  def OnForward(self, event):  if not self.html.HistoryForward():  wxMessageBox(No more items in history!)  如果您以前使用過 wxPython 或任何其它 Python 圖形工具箱,那么您可以發現我們做的所有事情就是向面板添加另一個容器并將四個按鈕置于其中,帶有對 exHtmlPanel 類中所添加的方法的回調函數。

基礎 wxHtml 類巧妙地為我們管理歷史,因此, OnBack 和 OnForward 僅僅是對基礎方法的調用。

  假定讀到這些時您已一直在使用 Python 解釋器,那么您可能注意到:如果關閉應用程序,它從不將控制返回給控制臺。

這個問題解決起來很簡單,但我們可能應該添加一個菜單欄來提供具有退出選項的文件菜單:  清單 4. 修改 exFrame 以添加帶有退出的文件菜單  class exFrame(wxFrame):  def __init__(self, parent, ID, title):  wxFrame.__init__(self, parent, ID, title, wxDefaultPosition, wxSize(600,750))  panel = exHtmlPanel (self, -1, self)  mnu_file = wxMenu()  mnu_file.Append(101, Exit, Exit the browser)  menuBar = wxMenuBar()  menuBar.Append(mnu_file, File)  self.SetMenuBar(menuBar)  EVT_MENU(self, 101, self.Exit)  def Exit(self, event):  self.Close(true)  當我們沒有試圖將它變為一個真正的瀏覽器的時候,我們在結尾處發現少了兩個添加項:大多數瀏覽器都有狀態欄,并且您可能注意到了沒有繪制任何圖像。

下列對 exApp 、 exFrame 和 exHtmlPanel 的修改添加了一個狀態欄以及所有來自 wxPython 的內置圖像支持:  清單 5. 添加狀態欄及圖像支持  class exApp(wxApp):  def OnInit(self):      wxInitAllImageHandlers()  frame = exFrame(NULL, -1, Example Browser)  frame.Show(true)  self.SetTopWindow(frame)  return true  class exHtmlPanel(wxPanel):  def __init__(self, parent, id, frame):  wxPanel.__init__(self, parent, -1)  self.frame = frame  self.cwd = os.path.split(sys.argv[0])[0]  if not self.cwd:  self.cwd = os.getcwd  self.html = exHtmlWindow(self, -1, self.frame)      self.html.SetRelatedFrame(self.frame, %s)      self.html.SetRelatedStatusBar(0)  ...  class exFrame(wxFrame):  def __init__(self, parent, ID, title):  wxFrame.__init__(self, parent, ID, title, wxDefaultPosition, wxSize(600,750))  panel = exHtmlPanel (self, -1, self)      self.CreateStatusBar()      self.SetStatusText(Default status bar)  ...  現在,基本瀏覽器的功能應該齊全了。

wxPython 的高級特性允許您創建自己的標記,可以通過定制代碼來處理這些標記以執行您選擇的任何操作。

對您自己的可定制嵌入式瀏覽器的控制為增強的報表生成及聯機幫助提供了無限的可能性。

  這些代碼本身就可以輕易為任意數目的應用程序提供基礎,并且 — 沒有理由將您限制在僅僅提供聯機幫助上。

請自由使用這些類,看看能讓它們發生什么有趣的行為。

版權聲明:本文由 撒代芹 整理編輯。

原標題:入門初學輪滑視頻教程,輪滑入門自學教程

轉載注明出處:http://www.dn9ww09s.icu/assemble/12916.html

文章評論

    共有條評論來說兩句吧...

    用戶名:

    驗證碼:

作者推薦

  • 網易云鎖屏歌詞,網易云怎么只有鎖屏歌詞

    網易云鎖屏歌詞,網易云怎么只有鎖屏歌詞 相關圖片網易云音樂鎖屏歌詞ios網易云音樂是一款功能豐富的軟件。我相信很多小朋友會用它來練習唱歌。如何打開網易云音樂的鎖屏歌詞?如何關閉網易云音樂的鎖屏?現在,超人軟件將為您...

  • 蔣大鴻地理實例,地理立向秘訣

    蔣大鴻地理實例,地理立向秘訣 相關圖片牽一發而動全身的地理實例HTML5得到的坐標代碼如下:代碼如下:!DOCTYPE HTML htmlhead titletest1。HTML/Title metahttp equiv=地理大全...

  • 三星s9指紋失靈,三星s10指紋不靈敏

    三星s9指紋失靈,三星s10指紋不靈敏 相關圖片三星手機怎么截屏隨著vivo x20plus屏幕指紋版的推出,可以說它為全屏幕手機注入了新鮮血液。不過,作為第一批智能手機,三星不會甘心衰落。近日,國外媒體披露,三星已經在研發三...

  • 搖一搖html,搖一搖html5

    搖一搖html,搖一搖html5 相關圖片搖一搖隨機看H5首先,優化devicemotionevent;刪除無用的代碼并按如下方式重新封裝devicemotionevent代碼:if(window)。Devicemotcss3搖一搖晃動...

  • Active directory,active

    Active directory,active 相關圖片打印機出現active當前不可用的活動目錄域服務通常在用戶使用打印機時發生。這種情況通常是由打印機服務中的設置引起的。只要你進入服務設置,大部分都可以解決。具體操作方法a...

  • 火螢桌面下載,螢火桌面

    火螢桌面下載,螢火桌面 相關圖片螢火視頻動態桌面很多用戶都喜歡使用火鷹視頻桌面來設置自己的動態壁紙,但有時會遇到火鷹視頻桌面無法使用或火鷹視頻桌面無法正常播放的情況,用戶可以嘗試重置壁紙品牌介紹...

  • 水波紋效果,如何做出水波紋的效果

    水波紋效果,如何做出水波紋的效果 相關圖片短發水波紋今天,我們將繼續分享JavaScript實現的效果示例,本文將介紹如何使用JavaScript來實現水波紋的效果。水波效應以圖片為背景。單擊圖片中的任何位置都將水波紋和大波浪的區別...

  • 小丸工具箱怎么樣,小丸工具箱怎么用

    小丸工具箱怎么樣,小丸工具箱怎么用 相關圖片小丸工具箱慢小藥丸工具箱是一種功能強大、使用方便的視頻壓縮工具,它可以最大程度地保持視頻質量,并能很好地壓縮視頻量,受到許多用戶的青睞。一些用戶仍然不了解小藥丸工...

  • 八萬落地suv哪款好,落地8萬左右的suv哪款好

    八萬落地suv哪款好,落地8萬左右的suv哪款好 相關圖片哪款手機測量工具好用HTML5現在已經成為最流行的標記語言,擁有成熟的社區和廣泛的瀏覽器支持。功能齊全,擴展性強,設計開發人員可以賺錢。更可控的元素,更自由的交互設計,變...

  • htc u12怎么樣,htcu12

    htc u12怎么樣,htcu12 相關圖片htcu12 社區HTC U12是HTC即將發布的旗艦車型。其上一代HTC U11在外觀上是一款非常成功的手機。全新的設計風格和出色的手機體驗挽救了宏達旗艦的聲譽。更有趣的是,索htc u12最新消息...

熱評文章

  • 怎么加steam好友,steam加不上好友怎么辦

    怎么加steam好友,steam加不上好友怎么辦 相關圖片steam加好友錯誤隨著國外優質的游戲新作不斷涌現,越來越多的國內玩家開始在steam平臺上下載、暢玩游戲。而且你還可以在游戲中和steam上的好友一起進行游戲。很多用戶還不知道怎s...

  • 激萌聊天,激萌為什么不能聊天了

    激萌聊天,激萌為什么不能聊天了 相關圖片激萌不能視頻聊天了嗎不同于一般的美容軟件,用戶可以聊天。那吉夢怎么開始聊天呢?吉夢如何開始視頻聊天?現在,超人軟件編輯將為您介紹它,希望您喜歡!吉夢怎么開始聊天?...

  • css3類似加載,常見加載中css3

    css3類似加載,常見加載中css3 相關圖片css3有哪些優化HTML代碼:代碼如下:UL class=main menuliclass=main menu item activeahref=(home/A/Lili clcss3動畫頁面加載...

  • 我的steam進不去市場,steam市場為什么進不去

    我的steam進不去市場,steam市場為什么進不去 相關圖片steam進不去隨著絕地生存之火,它的分布平臺蒸汽也為更多玩家所知。Steam平臺是全球最大的綜合數字發行平臺之一,曾榮獲第33屆最佳游戲平臺金搖滾獎。但有些球員想進入狀態steam老是...

  • 跳轉菜單,自定義菜單跳轉網頁

    跳轉菜單,自定義菜單跳轉網頁 相關圖片訂閱號菜單跳轉到網頁一。Dreamweaver跳轉菜單行為1。選擇文檔2中的跳轉菜單對象。打開行為面板3。單擊“添加行為”( )按鈕,然后在彈出式下拉菜單中選擇“跳轉菜單”命令。如公...

  • 悅跑圈只能加入一個跑團,怎么加入附近的跑團

    悅跑圈只能加入一個跑團,怎么加入附近的跑團 相關圖片悅跑圈跑團團長權限悅跑圈,作為一種運動神器,相信很多小朋友都喜歡用它,加入跑團,和同浩一起跑。如何加入跑步小組?現在,超人軟件將為您制作一個教程,讓您享受悅潤泉的...

  • 人臉漸變特效,ae漸變特效在哪

    人臉漸變特效,ae漸變特效在哪 相關圖片ae漸變特效在哪 英文版幾個新朋友問如何使用焰火簡單地處理圖片,所以他們編寫了以下教程。希望能對你有所幫助教程如下:效果如下ps漸變效果教程...

  • 小丸工具箱快壓制成功,小丸工具箱壓制教程

    小丸工具箱快壓制成功,小丸工具箱壓制教程 相關圖片小丸工具箱壓制暫停如果你想找到一個工具來抑制視頻,小藥丸工具箱可以幫助你。所謂視頻壓縮,就是把原來的高清視頻文件壓縮成小格式視頻。添加一些個人信息。它以這種方式在...

  • 一加5刷flyme7,一加5刷flyme

    一加5刷flyme7,一加5刷flyme 相關圖片一加3刷flyme7在各種屏幕不全面的機型中,1 5是硬件性能最為流暢的手機。遺憾的是,除了官制和官制改革外,第三方體制幾乎沒有更新,使得曾經被刷成小男孩的小王子。所以去年一加...

  • 視覺設計師是做什么的,高級視覺設計師

    視覺設計師是做什么的,高級視覺設計師 相關圖片視覺ui設計作者的專業是互動設計。課程框架更注重用戶研究和邏輯分析。視覺設計課程非常有限。然而,交互設計師的職位現在希望求職者能夠勝任視覺設計的同時。為了提高自己,不...

關注微信

变脸官网查询