莆仙生活网 > 知识库 >

toolstrip

来源:莆仙生活网时间:2024-03-24 21:00:38编辑:莆仙君

工具栏ToolStrip中图标的大小怎么改变

这是一个来自CodeProject上的控件—MultiImageTollStrip,详细的内容和最新的更新大家可以到CodeProject了解,这里只介绍它的主要功能和大概的框架。作者继承ToolStrip控件扩展了一个MultipleImageToolStrip 控件,我们需要了解的是一个AssignImage函数和ImageSize属性。AssignImage是为每个工具栏的项设置图标,ImageSize就是设置图标的大小,它包括Small (16 x 16), Medium (24 x 24), Large (32 x 32), 和 ExtraLarge (48 x 48)这几种类型。整个类的结构如下:下面看看它的使用方法,首先拖一个MultipleImageToolStrip到窗体上,然后加入一些项,在窗体的Load事件中加入向下面这样的代码:private void Form1_Load(object sender, EventArgs e){// Select 'Small' from drop down list.comboIconSize.SelectedIndex = 0;// Begin updating tool strip images. This is important because it prevents// the tool strip from refreshing after each image assignment.this.iconToolStrip.BeginUpdateImages();// Here it is possible to provide an 'IImageProvider' instance.this.iconToolStrip.AssignImage(toolStripBack, new IconImageProvider(Resources.arrow_left));// Or just provide icons themselves.this.iconToolStrip.AssignImage(toolStripForward, Resources.arrow_right);this.iconToolStrip.AssignImage(toolStripHome, Resources.home);this.iconToolStrip.AssignImage(toolStripStop, Resources.stop);// Finalize updating.作者:Starts_2000出处:CS 程序员之窗。你可以免费使用或修改提供的源代码,但请保留源代码中的版权信息,详情请查看:CS程序员之窗开源协议。


如何自定义iOS中的控件

IOS中得控件,大家并不陌生。那么如何来自定义一个控件呢,对于纯粹的显示类的控件我们在这里不再赘述,只是说一下自定义控件,如何响应点击消息。
一、UIControl中的触摸事件响应函数
自定义一个控件,如果是需要响应点击消息、拖动消息,大多是直接继承自UIControl,在不熟悉下面所要讲的东西之前,一直是自己写手势判断来响应,然后发现... ...后面的都不说了,一切都是泪啊!

二、Target-Action模式
在可以响应触摸事件之后,就会如何使其调用我们的自定义方法了。在了解这个模式之前,都是一直在用“protocol”来做... ...好了,一切不说从前。
见如下代码:
// 添加一个 target/action 注册事件及其响应
- (void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;

// 移除一个 target/action 注销事件及其响应
- (void)removeTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;

// 获取所有 target/action 的 target 对象
- (NSSet *)allTargets;

// 获取所有要响应的 UIControlEvents
- (UIControlEvents)allControlEvents;

// 获取指定target和UIControlEvents的action的方法名,target不能为nil
- (NSArray *)actionsForTarget:(id)target forControlEvent:(UIControlEvents)controlEvent;

// 调用指定的 target/action,第三个参数作用未知
- (void)sendAction:(SEL)action to:(id)target forEvent:(UIEvent *)event;
// 发送一个事件,使触发对应的 target/action 可以指定自定义事件
- (void)sendActionsForControlEvents:(UIControlEvents)controlEvents;

使用,标为红色的两个方法,我们就可以实现自定义方法的处理。

下列事件为基类UIControl所支持,除非另有说明,也适用于所有控件。

UIControlEventTouchDown // 单点触摸按下事件:用户点触屏幕,或者又有新手指落下的时候。
UIControlEventTouchDownRepeat // 多点触摸按下事件,点触计数大于1:用户按下第二、三、或第四根手指的时候。
UIControlEventTouchDragInside //当一次触摸在控件窗口内拖动时。
UIControlEventTouchDragOutside //当一次触摸在控件窗口之外拖动时。
UIControlEventTouchDragEnter //当一次触摸从控件窗口之外拖动到内部时。
UIControlEventTouchDragExit //当一次触摸从控件窗口内部拖动到外部时。
UIControlEventTouchUpInside //所有在控件之内触摸抬起事件。
UIControlEventTouchUpOutside //所有在控件之外触摸抬起事件(点触必须开始与控件内部才会发送通知)。
UIControlEventTouchCancel //所有触摸取消事件,即一次触摸因为放上了太多手指而被取消,或者被上锁或者电话呼叫打断。
UIControlEventTouchChanged //当控件的值发生改变时,发送通知。用于滑块、分段控件、以及其他取值的控件。你可以配置滑块控件何时发送通知,在滑块被放下时发送,或者在被拖动时发送。
UIControlEventEditingDidBegin //当文本控件中开始编辑时发送通知。
UIControlEventEditingChanged //当文本控件中的文本被改变时发送通知。
UIControlEventEditingDidEnd //当文本控件中编辑结束时发送通知。
UIControlEventEditingDidOnExit //当文本控件内通过按下回车键(或等价行为)结束编辑时,发送通知。
UIControlEventAlltouchEvents //通知所有触摸事件。
UIControlEventAllEditingEvents //通知所有关于文本编辑的事件。
UIControlEventAllEvents //通知所有事件。


工具栏ToolStrip中图标的大小怎么改变

工具栏(ToolStrip)的图标在设计的时候设定后,大小就固定了,要想在运行中改变它的大小是很麻烦的,今天就来介绍一个扩展的工具栏控件,它可以很方便的实现这样的效果。这是一个来自CodeProject上的控件—MultiImageTollStrip,详细的内容和最新的更新大家可以到CodeProject了解,这里只介绍它的主要功能和大概的框架。作者继承ToolStrip控件扩展了一个MultipleImageToolStrip 控件,我们需要了解的是一个AssignImage函数和ImageSize属性。AssignImage是为每个工具栏的项设置图标,ImageSize就是设置图标的大小,它包括Small (16 x 16), Medium (24 x 24), Large (32 x 32), 和 ExtraLarge (48 x 48)这几种类型。整个类的结构如下:下面看看它的使用方法,首先拖一个MultipleImageToolStrip到窗体上,然后加入一些项,在窗体的Load事件中加入向下面这样的代码:private void Form1_Load(object sender, EventArgs e){// Select 'Small' from drop down list.comboIconSize.SelectedIndex = 0;// Begin updating tool strip images. This is important because it prevents// the tool strip from refreshing after each image assignment.this.iconToolStrip.BeginUpdateImages();// Here it is possible to provide an 'IImageProvider' instance.this.iconToolStrip.AssignImage(toolStripBack, new IconImageProvider(Resources.arrow_left));// Or just provide icons themselves.this.iconToolStrip.AssignImage(toolStripForward, Resources.arrow_right);this.iconToolStrip.AssignImage(toolStripHome, Resources.home);this.iconToolStrip.AssignImage(toolStripStop, Resources.stop);// Finalize updating.作者:Starts_2000出处:CS 程序员之窗。你可以免费使用或修改提供的源代码,但请保留源代码中的版权信息,详情请查看:CS程序员之窗开源协议。


winform中tabcontrol控件下有多个tabpage控件,每个控件对应数据库中一张表单数据。 具体在问题补充里面

这样办,在tbcontrol里面有一个selectedindex值。选定他。下面是我写的代码。请参考
private void TbCont_SelectedIndexChanged(object sender, EventArgs e)
{
if (TbCont.SelectedIndex == 1)
{
///加载征订目录批次 dgvZdmlpc
Maticsoft.BLL.zdmlpc zdmlpcbll = new Maticsoft.BLL.zdmlpc();
zdmlpclist = zdmlpcbll.GetAllList();
dgvZdmlpc.DataSource = zdmlpclist.Tables[0];
this.dgvZdmlpc.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
}


winform中如何在一个form中设置多个页?

可以使用TabControl,然后在它的TabPage上面再加载一个TabContrl来处理。TabControl的属性->行为->Alignment这个属性有四个值:Top、Bottom、Left、Right,可以分别将TabControl中的TabPage的标签页显示到顶部、下面、左边和右边,你右键看一下属性就明白了,当然也可以用其它的控件,比如TreeView之类的。希望对你有帮助,还有疑问请追问或是Hi


怎么如何更改鼠标经过winform的toolstripbutton的背景颜色效果

将某一位置1,无论原来是0是1,操作后肯定是1,“按位或(即操作符'|')”一个该位为1,其余位为0的单字节数。如a=00001000,b=000000010,则a | b=00001010,即把第1位变成1了。注意位数从右至左是0~7。

将某一位置0,无论原来是0是1,操作后肯定是0,“按位与(即操作符'&')”一个该位为0,其余位为1的单字节数。如a=00001010,b=11111101,则a | b=00001000,即把第1位变成0了。

将某一位变反,即原为1时变为0,原为0时变为1,“按位异或(即操作符'^')”一个该位为1,其余位为0的单字节数。如a=00001000,b=000001000,则a | b=00000000,即把第3位变反为0了。


c# 如何调整ToolStripButton 大小

动态加载ToolStrip上的ToolStripButton,其实是图标大小可选而已,自己可以如法自定义多种。
1. 使用大图标/小图标
追加的菜单事件中写控制ToolStrip的ImageScalingSize属性的代码:
///
/// 大图标单击事件
///
///
///
private void tsmiLargeIcon_Click(object sender, EventArgs e)
{
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(32, 32);// 设置为32*32
this.toolStrip1.Height = 32;
foreach (ToolStripItem tsmi in this.toolStrip1.Items)
{
if (tsmi is ToolStripButton)
{
tsmi.AutoSize = false;
tsmi.Height = 32;
tsmi.Width = 32;
tsmi.AutoSize = true;
}
}
}

///
/// 小图标单击事件
///
///
///
private void tsmiSmallIcon_Click(object sender, EventArgs e)
{
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(16, 16);
this.toolStrip1.Height = 23;
foreach (ToolStripItem tsmi in this.toolStrip1.Items)
{
if (tsmi is ToolStripButton)
{
tsmi.AutoSize = false;
tsmi.Height = 16;
tsmi.Width = 16;
tsmi.AutoSize = true;
}
}
}
请注意:要在改变工具按钮前将【AutoSize】设为【false】,是因为只有设置此项,才能改变ToolStripButton的大小。


工具栏ToolStrip中图标的大小怎么改变

该不是想实现鼠标悬停时图标变大吧。

这样写:
toolStripButton1.ImageScaling = ToolStripItemImageScaling.None;
此属性默认是SizeToFit,也就是自动将图标图像缩放到toolStrip合适的大小,
这个数值在toolStrip的AutoSize为false且自己指定了toolStrip的长宽时用比较合适。而None则是指示图标使用原始大小的Image,如果Image高过/宽过toolStrip,超出部分不可见。

所以在运行时想放大图标图像的话,你还需要准备一个大小比较合适的Image。
举例,系统默认添加toolStrip高度是25,你可以关闭toolStrip的AutoSize然后调整高度到31,图标都使用24x24的,当SizeToFit时它会变成16x16的,当需要放大时,改这个项的ImageScaling到None就会还原回24x24。

最后,布局最好配合toolStrip的Padding和LayoutStyle属性来做。

最后的最后,如果想要任意换图标……还是改了ImageScaling后自己找几组大小不同的图标,需要的时候写给子项的Image属性好了。


上一篇:永州市工商局

下一篇:没有了

相关推荐

热门头条