學(xué)習(xí)啦 > 創(chuàng)業(yè)指南 > 職場(chǎng) > 面試題 >

關(guān)于wxRuby中的布局控件面試題

時(shí)間: 書(shū)榮1192 分享

  wxRuby是wxWidgets的Ruby綁定,所以對(duì)于布局類(lèi)的使用和wxWidgets中一樣,主要功能是在 sizer.add 函數(shù)中設(shè)置有關(guān)標(biāo)志做到的。下面是學(xué)習(xí)啦小編為你整理的Ruby面試題,希望對(duì)你有所幫助!


  下面是BoxSizer的一個(gè)例子

  require "wx" #載入wx庫(kù)文件

  include Wx #包含進(jìn)Wx模塊

  class MinimalApp < App

  def on_init

  mainFrame = MyFrame.new

  mainFrame.show()

  end

  end

  MinimalApp.new.main_loop #建立MinimalApp實(shí)例并進(jìn)入消息循環(huán)

  自定義窗口類(lèi)MyFrame,用于做為主窗口

  class MyFrame < Frame

  def initialize

  super(nil, -1, "Changing Icons!", Wx::DEFAULT_POSITION, Wx::Size.new(425,450))

  @mainPanel=Panel.new(self,1003,Wx::DEFAULT_POSITION,Wx::Size.new(425,450)) #建立一個(gè)主panel,用于放置所有控件

  @notebook_style = Wx::AUI_NB_DEFAULT_STYLE|Wx::AUI_NB_TAB_EXTERNAL_MOVE|Wx::NO_BORDER

  @notebook = Wx::AuiNotebook.new(@mainPanel,1005,DEFAULT_POSITION,Wx::Size.new(400,450),@notebook_style)

  #@notebook.set_left_dockable(true)

  @notebookPage1 = Panel.new(@notebook,1006)

  @notebookPage2 = Panel.new(@notebook,1006)

  @notebook.add_page(@notebookPage1,"第一")

  @notebook.add_page(@notebookPage2,"第二")

  @sizer= BoxSizer.new(VERTICAL)

  #sizer.add()函數(shù)第二個(gè)參數(shù)是縮放因子,0表示固定大小,其它值表示對(duì)空白空間占用大小的劃分比例,如果有兩個(gè)控件其參數(shù)

  #值分別為 1 2 則表示 第1個(gè) 占空白大小的 1/3 第二個(gè)為 2/3

  #第三個(gè)參數(shù)為布局控件標(biāo)記, 這個(gè)有很重要的作用,比如 控件隨布局控件一起改變大小, 控件上下左右的邊距等等

  #詳細(xì)的標(biāo)記種類(lèi)及說(shuō)明可以查看 <<使用wxWidgets進(jìn)行跨平臺(tái)程序開(kāi)發(fā)>> 的第240頁(yè)

  @sizer.add(@notebook,1,Wx::GROW|Wx::ALL,10)

  @mainPanel.set_sizer(@sizer)

  end

  end


面試題相關(guān)文章:

1.求職面試題目及答案大全

2.經(jīng)典面試題

3.競(jìng)聘上崗面試題及答案

4.抗壓能力面試題及參考答案

5.經(jīng)典情景面試題及參考答案

4063866