none
VB6 問2 RRS feed

  • 問題

  • 設定 TextBox 能跟著表單的大小一起縮放

    由於我上面還有按鈕  所已減掉一些
    執行正常   但縮小就出現

    Private Sub Form_Resize()
        Text1.Width = Form1.ScaleWidth
        Text1.Height = Form1.ScaleHeight - 350  '錯誤指出這一行   不正確屬性值
    End Sub

    沒有-350  下面的水平卷軸會看不到
    幫解惑
    2009年8月7日 上午 10:33

解答

所有回覆

  • Hi,

    VB6我不會
    但是可以檢查一下ScaleHeight是否>350

    http://www.dotblogs.com.tw/larrynung/
    2009年8月7日 上午 11:29
  • Private Sub Form_Resize()
    ON ERROR RESUME NEXT   '<==加上這個讓它忽略錯誤就好了! 因為最小化時.ScaleHeight會=0,再減去350就會變成負值,你把.Height設為負值就會出錯
        Text1.Width = Form1.ScaleWidth
        Text1.Height = Form1.ScaleHeight - 350  '錯誤指出這一行   不正確屬性值
    End Sub
    Jones
    2009年8月7日 下午 02:24
  • 線上手冊看過沒?
    說說為何用 ScaleHeight

    ScaleHeight、ScaleWidth 屬性

           

    當使用圖形方法或調整控制項位置時,傳回或設定物件內部的水平 (ScaleWidth) 或垂直 (ScaleHeight) 量測單位值。對於 MDIForm 物件,此屬性在設計階段無法使用的,而在執行階段是唯讀的。

    語法


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    • 已標示為解答 Lolota Lee 2009年8月14日 上午 05:45
    2009年8月7日 下午 02:25
  • '因為最小化時ScaleHeight 為0 所以會出現錯誤
    '所以加入<>0的判斷
    Private Sub Form_Resize()
        Text1.Width = Form1.ScaleWidth
        If Form1.ScaleHeight <> 0 Then Text1.Height = Form1.ScaleHeight - 350
    End Sub
    2009年8月11日 上午 07:10
  • 最小化判斷:
       If Me.WindowState <> vbMinimized Then
       End If
    

    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    • 已標示為解答 Lolota Lee 2009年8月14日 上午 05:45
    2009年8月11日 上午 07:27