【发布时间】:2011-02-10 16:40:11
【问题描述】:
我正在涉足 C#,但我对它相当缺乏经验。我有一个带有文本和图像的按钮。当我运行程序并按下按钮时,按钮与文本一起被推入,但图像保持静态。
有人知道解决方法吗?
*编辑:
this.btnRename.AllowDrop = true;
this.btnRename.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.btnRename.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.btnRename.Image = ((System.Drawing.Image)(resources.GetObject("btnRename.Image")));
this.btnRename.ImageAlign = System.Drawing.ContentAlignment.TopCenter;
this.btnRename.Location = new System.Drawing.Point(675, 3);
this.btnRename.Margin = new System.Windows.Forms.Padding(0);
this.btnRename.Name = "btnRename";
this.btnRename.Size = new System.Drawing.Size(55, 48);
this.btnRename.TabIndex = 7;
this.btnRename.Text = "&Rename";
this.btnRename.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
this.btnRename.UseVisualStyleBackColor = false;
this.btnRename.Click += new System.EventHandler(this.btnRename_Click);
【问题讨论】:
-
文本也应该是静态的。打开 Designer.cs 文件,找到初始化按钮的代码并将其发布到您的问题中。
-
我不知道你想做什么。你想让图像左右移动 1 个像素吗?如果是这样,你为什么想要这样的行为?尝试单击仅带有文本的普通按钮,文本也保持静态。我建议您让 .net 框架与操作系统一起决定如何呈现按钮以及单击效果应该如何表现。这为在该操作系统下运行的所有应用创建了一个共同的外观。
-
我的意思是,当您按下按钮时,按钮和文本会缩进,就像您实际按下按钮一样。同样的行为不适用于图像。
-
在我的 PC (Windows 7) 上,当我按下按钮时,按钮的文本不会缩进...因此,图像也不应该移动以保持一致的行为。
-
不知道其他人在做什么,但对我来说,当点击按钮时,文本确实会被向下和向右推 - 似乎是 1 个像素 - 但图像保持静止。如果他们真的没有发生这种情况,也许这是一个操作系统设置,但我无法想象一个文本不移动的按钮。 KrisTrip 下面的解决方案似乎效果很好。