2011-06-30 57 views
0

在谷歌搜索後,我有一些例子,但沒有一個給我我需要的東西。通過控件C繪製並清除字符串#

我需要寫一個字符串(WriteString())到一個ButtonClick的WinForm中的控制,我需要更新該繪圖,因爲我試圖將日期寫入控制,系統日期。

因此,每次用戶點擊該按鈕時,DateTime.Now.ToString();都應該繪製到控件中。

最好成績

回答

0

draw a string on label

這個網址一定會幫助你

編寫的代碼有

void Label_OnPaint(object sender, PaintEventArgs e) { 
    base.OnPaint(e); 
    Label lbl = sender as Label; 
    if (lbl != null) { 
    string Text = lbl.Text; 
    e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; 
    if (myShowShadow) { // draw the shadow first! 
     e.Graphics.DrawString(Text, lbl.Font, new SolidBrush(myShadowColor), myShadowOffset, StringFormat.GenericDefault); 
    } 
    e.Graphics.DrawString(Text, lbl.Font, new SolidBrush(lbl.ForeColor), 0, 0, StringFormat.GenericDefault); 
    } 
} 
+0

好吧,它將與標籤一起工作,也與我的控制,但更新的唯一方法是Control.Hide();比Control.Show(); – Burimi

0

您應該考慮使用一個WinForms Label和一個Timer

+0

是但若我使用標籤到視頻播放器控制中,標籤顯示是'背景,我需要它透明(背景)。 – Burimi

+0

您可以嘗試將[背景](http://msdn.microsoft.com/zh-cn/library/system.windows.forms.control.backcolor.aspx)顏色的標籤設置爲[透明](http:// msdn .microsoft.com/en-us/library/system.drawing.color.transparent.aspx),但這可能會或可能無法正常工作,具體取決於您如何渲染視頻 – aL3891

+0

我做了,它根本無法工作。 – Burimi

0

或者您可以修改控件的OnPaint方法以覆蓋如何繪製控件。目前已在圖形對象的方法可以讓你寫一個字符串g.DrawString

+0

你能提供一些例子嗎? – Burimi

+0

在這裏你會看到一個:http://msdn.microsoft.com/es-es/library/system.windows.forms.control.onpaint.aspx –