2013-03-28 76 views
1

我用兩個forms,當我在第一formFormSales點擊該按鈕,我想在publicformlabel顯示text「非庫存價格」與減少fontsizeFormNumberpad。我的代碼,使標籤的字體大小的另一種形式小

Private Sub btnItemNonTaxable_Click(ByVal sender As Object, ByVal e As EventArgs) _ 
            Handles btnItemNonTaxable.Click 
    chktax1.Checked = False 
    _AmountTitle = "Non Inventory Taxable Price" 
    Dim fnt as Font 
    fnt = FormNumberPad.lblTitle.Font 
    FormNumberPad.lblTitle.Font = New Font(fnt.Name, 12, FontStyle.Bold) 
    Dim numberpad As New FormNumberPad 
    numberpad.ShowDialog() 

    .............. 
    .............. 
End Sub 

字體大小沒有得到減少,我怎麼能做到這一點?

回答

3

這裏

Dim numberpad As New FormNumberPad 
numberpad.ShowDialog() 

要創建FormNumberPad的新實例,該行及以下,這種情況下顯示爲具有的ShowDialog( )。
ShowDialog是模態的,這意味着它不會返回,直到您關閉顯示的窗體。
此時,您的標籤(仍然存在於內存中)被隱藏,您看不到任何更改。

您可以嘗試在顯示對話框之前更改標籤,但在表單的當前實例(數字鍵盤)上,而不是在對話框的類定義FormNumberPad上。

Dim numberpad As New FormNumberPad 
fnt = numberpad .lblTitle.Font 
numberpad.lblTitle.Font = New Font(fnt.Name, 12, FontStyle.Bold) 
numberpad.ShowDialog() 
+0

如果你想在運行時改變字體,這是最好的方法。 –

+0

非常感謝它! –

1

這是因爲你使用的是「新」 FormNumberPad,改變與FormNumberPad.ShowDialog()

+0

非常感謝,它的工作原理! –