Кнопка C # с изображением не «нажимается» при нажатии - PullRequest
4 голосов
/ 21 апреля 2010

Я балуюсь 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);

1 Ответ

1 голос
/ 21 апреля 2010

.NET не делает это автоматически, потому что не знает, что вы ожидаете от изображения при нажатии кнопки. Вы ожидаете, что он будет меньше, перемещен вправо, перемещен влево ... и т. Д. Возможно, вы могли бы реализовать события MouseDown и MouseUp? На MouseDown вы могли бы изменить изображение на то, что вы ожидаете увидеть для «вставленного», и снова изменить его на MouseUp. Конечно, это включает в себя, по сути, 2 изображения: «щелчок» и «нормальную» версию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...