我如何使WinForms TabPage页眉宽度适合它的标题? 这是问题所在。我如何使WinForms TabPage页眉宽度适合它的标题?
6
A
回答
10
本地的Windows标签控件允许覆盖默认的最小标签宽度。可悲的是,这个功能在TabControl封装类中没有公开。这是可以修复的。为您的项目添加一个新类并粘贴下面显示的代码。编译。将新的控件从工具箱的顶部拖放到表单上。
using System;
using System.Windows.Forms;
class MyTabControl : TabControl {
protected override void OnHandleCreated(EventArgs e) {
base.OnHandleCreated(e);
// Send TCM_SETMINTABWIDTH
SendMessage(this.Handle, 0x1300 + 49, IntPtr.Zero, (IntPtr)10);
}
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern IntPtr SendMessage(IntPtr hWnd, int msg, IntPtr wp, IntPtr lp);
}
0
您需要测量字体。
尝试是这样的:
Dim tabPage As New TabPage
Dim width As Integer = 0
Dim valueToMeasure As String = <Your title Here>
Dim g As Graphics = tabPage.CreateGraphics()
width = CType(g.MeasureString(valueToMeasure, tabPage.Font).Width, Integer)
可能作为填料添加额外的机器人(宽度=宽度+10)
编辑:
<tab>.width = GetTabWidth(<Title>)
Private Function GetTabWidth (Byval title as String) as Integer
Dim widthValue as Integer = 10 'Padding (Optional)
Dim tabPage as New tabPage
Dim g as Graphics = tabPage.CreateGraphics()
widthValue += Ctype(g.measureString(title, tabPage.Font).Width, Integer)
Return widthValue
End Function
3
谢谢,汉斯。 我用你的代码没有创建一个类
//InitializeComponent
this.tabPresentations.HandleCreated += new System.EventHandler(TabControl_HandleCreated);
void TabControl_HandleCreated(object sender, System.EventArgs e)
{
// Send TCM_SETMINTABWIDTH
SendMessage((sender as TabControl).Handle, 0x1300 + 49, IntPtr.Zero, (IntPtr)4);
}
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern IntPtr SendMessage(IntPtr hWnd, int msg, IntPtr wp, IntPtr lp);
相关问题
- 1. ExtJS标签页眉宽度
- 2. 如何使Tab页面的宽度适合TabControl的宽度
- 3. Aspxgridview:如何更改标题标题宽度,使其适合列宽?
- 4. 如何从页眉/合适的词汇
- 5. 如何使定制的UITableViewCell xib宽度适合设备宽度
- 6. HTML 100%的宽度页眉和页脚
- 7. 如何使标签的文本适合其宽度
- 8. 图标不适合Bootstrap navbar的宽度
- 9. RTF格式:如何使单元格宽度适合RichEdit宽度?
- 10. 如何增加我的标题宽度以匹配整个页面宽度?
- 11. 使用重复无,我如何使页脚背景适合100%宽度
- 12. 网页不适合宽度在Android上
- 13. 如何适合compoent的整个宽度
- 14. 宽度JTable单元适合宽度值
- 15. 如何使我的导航和页眉真正达到100%的宽度?
- 16. 具有标题的Blogger图像未调整为适合宽度
- 17. 适合宽度的UIImageView
- 18. wkhtmltopdf页眉顶部的标题高度和定位标题
- 19. iTextSharp打印GridView - 输出页眉宽度
- 20. CSS - 如何使内容适合段落的宽度/高度?
- 21. 如何降低XAML ToggleSwitch的宽度(宽度属性不适合我)?
- 22. 父宽度不适合子宽度css
- 23. css页眉布局宽度3 divs
- 24. 适合移动设备宽度的宽网页
- 25. HTMLEditorExtender宽度不适合%100
- 26. 如果页面宽度超过图像宽度,我如何使横幅图像伸展以适合页面的宽度?
- 27. 使内容适合div的宽度
- 28. UIElements放在标题页眉
- 29. CSS - 宽度适合内容
- 30. 如何使svg适合html宽度和高度?
好吧,我明白了,接下来是什么? – clumpter
请参阅我上面的编辑 –