none
vb2008 button 和 textbox擺放位置問題 RRS feed

  • 問題

  • 親愛的各位大大:

      我有一個Form內有panel,及一個Datagridview與3個Button. 而panel的Dock=fill ,Datagridview的Dock=button當我在執行程式時該Datagridview ,button,textbox都在先前設定擺放的位置
    但是一但我按右上角的放大紐button,textbox都還在先前設定擺放的位置,請問如何讓它能夠隨放大紐被按下時移動到適當的位置呢?

    感謝各位大大的指教

    2010年8月11日 上午 03:17

解答

所有回覆

  • Hi!

    您的 button textbox 有設定以下屬性嗎?

    Control.Dock 屬性 : 取得或設定停駐在其父控制項的控制項框線,並決定控制項隨其父代重新調整大小的方式。

    http://msdn.microsoft.com/zh-tw/library/system.windows.forms.control.dock(VS.90).aspx

    Control.Anchor 屬性 : 取得或設定控制項繫結至的容器邊緣,並決定控制項隨其父代重新調整大小的方式。

    http://msdn.microsoft.com/zh-tw/library/system.windows.forms.control.anchor(v=VS.90).aspx


    歡迎參觀我的Blog.NET菜鳥自救會
    2010年8月11日 上午 03:35
    版主
  • 親愛的大大:

         看了您所提供的Control.Dock 屬性 與Control.Anchor 屬性還是有些不知道該如何下筆!後來在網路上看到一篇類似的文章如下 http://www.dotblogs.com.tw/chou/archive/2009/02/19/7233.aspx 似乎是您的說明。如果我要連字型比例放大呢?請問該怎麼做?感謝您

     

    Best regards,

    2010年8月11日 上午 09:15
  • 請問小歐大大:

     我依照此網站http://www.dotblogs.com.tw/chou/archive/2009/02/19/7233.aspx的寫法修改但出現問題,在Form1_Load上的oldwidth與oldheight無法傳送到Form1_Resize上,因此在Form1_Resize上的oldwidth與oldheight值為0請問我該如何修改呢?以下是我的程式碼

    Public Class Form1
    Dim oldwidth, oldheight As Double

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            oldwidth = Me.Width
            oldheight = Me.Height

    Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize
           
            dim x as double = (Me.Width / oldwidth)  //錯誤訊息顯示oldwidth為零
            dim y as double = (Me.Height / oldheight)//錯誤訊息顯示oldheight為零
            Button1.Width = Convert.ToInt32(x * Button1.Width)
            Button1.Height = Convert.ToInt32(x * Button1.Height)
            oldwidth = Me.Width
            oldheight = Me.Height

        End Sub

    感謝您

    2010年8月12日 上午 06:18