Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
100 / 102 / 42
Регистрация: 11.01.2016
Сообщений: 902
1

Убегающая кнопка

29.03.2016, 14:08. Просмотров 1982. Ответов 3

Здравствуйте товарищи программисты.
Нужен проект Windows Forms "убегающей кнопки". И чтобы кнопка не выходила за границы формы.
Самостоятельно пытался найти, не вышло.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.03.2016, 14:08
Ответы с готовыми решениями:

Убегающая кнопка
Вечер добрый, нужна помощь в задачке. Реализовать кнопку, чувственную к движению мыши. При ее...

Убегающая кнопка
Добрый вечер. Нужна ваша помощь нужно сделать кнопку которая убегала б от курсора. В интернете есть...

Убегающая кнопка
Всем доброго времени суток нужна ваша помощь. Вот задание: Реализовать кнопку, чувственную к...

Кнопка убегающая от указателя мыши
Создать следующую программу: при наведении указателя мыши на кнопку ее координаты изменяются...

3
106 / 106 / 58
Регистрация: 04.03.2013
Сообщений: 479
29.03.2016, 14:56 2
UseMuse, Вот посмотри
0
21 / 21 / 13
Регистрация: 08.12.2015
Сообщений: 70
29.03.2016, 15:51 3
UseMuse, вот набыдлокодил на скорую руку:
C#
1
2
3
4
5
6
7
8
9
10
11
   private void button1_MouseMove(object sender, MouseEventArgs e)
        {
            int stepX=(button1.Width / 3); //задаем шаг убегания по X
            int stepY = (button1.Height / 3); //задаем шаг убегания по Y
 
            if (((button1.Left + button1.Width + stepX) < (this.ClientSize.Width)) && (e.X <= button1.Width / 2)) button1.Location = new Point(button1.Location.X + stepX, button1.Location.Y);
            if ((button1.Left > stepX) && (e.X > button1.Width / 2)) button1.Location = new Point(button1.Location.X - (button1.Width / 3), button1.Location.Y);
 
            if (((button1.Top + button1.Height + stepY) < (this.ClientSize.Height)) && (e.Y <= button1.Height / 2)) button1.Location = new Point(button1.Location.X, button1.Location.Y + stepY);
            if ((button1.Top > stepY) && (e.Y > button1.Height / 2)) button1.Location = new Point(button1.Location.X, button1.Location.Y - stepY); 
        }
0
100 / 102 / 42
Регистрация: 11.01.2016
Сообщений: 902
29.03.2016, 16:10  [ТС] 4
Написал, кнопка убегает, есть возможность поймать, если успеваешь кликнуть по кнопке, выводит текстовый MessageBox, в зависимости от того, сколько раз кликнул. Тем самым можно разработать целый диалог с пользователем
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
public partial class Form1 : Form
{
    static int i = 0;
    public Form1()
    {
        InitializeComponent();
    }
 
    private void button1_MouseHover(object sender, EventArgs e)
    {
        Random rnd = new Random();
 
        int WinW = this.Width,
        WinH = this.Height,
        ButW = button1.Width,
        ButH = button1.Height,
        NewX = rnd.Next(WinW - ButW),
        NewY = rnd.Next(WinH - ButH);
        button1.SetBounds(NewX, NewY, ButW, ButH);
    }
 
    private void button1_Click(object sender, EventArgs e)
    {
        i++;
        switch (i.ToString())
        {
            case "1":
                {
                    MessageBox.Show("Просто повезло попасть! Попробуйте снова") ;
                    return;
                }
            case "2":
                {
                    MessageBox.Show("Неа, неа, не было!");
                    return;
                }
            case "3":
                {
                    MessageBox.Show("Бог любит троицу. Последний раз и всё");
                    return;
                }
            case "4":
                {
                    MessageBox.Show("текст");
                    return;
                }
            
        }
    }
    
    /// <summary>
    /// Required designer variable.
    /// </summary>
    private System.ComponentModel.IContainer components = null;
 
    /// <summary>
    /// Clean up any resources being used.
    /// </summary>
    /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
    protected override void Dispose(bool disposing)
    {
        if (disposing && (components != null))
        {
            components.Dispose();
        }
        base.Dispose(disposing);
    }
 
    #region Windows Form Designer generated code
 
    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    private void InitializeComponent()
    {
        this.button1 = new System.Windows.Forms.Button();
        this.SuspendLayout();
        // 
        // button1
        // 
        this.button1.BackColor = System.Drawing.SystemColors.GradientActiveCaption;
        this.button1.Location = new System.Drawing.Point(559, 285);
        this.button1.Name = "button1";
        this.button1.Size = new System.Drawing.Size(148, 42);
        this.button1.TabIndex = 0;
        this.button1.Text = "Нажми";
        this.button1.UseVisualStyleBackColor = false;
        this.button1.Click += new System.EventHandler(this.button1_Click);
        this.button1.MouseHover += new System.EventHandler(this.button1_MouseHover);
        // 
        // Form1
        // 
        this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
        this.ClientSize = new System.Drawing.Size(1425, 599);
        this.Controls.Add(this.button1);
        this.Name = "Form1";
        this.Text = "Form1";
        this.ResumeLayout(false);
 
    }
 
    #endregion
 
    private System.Windows.Forms.Button button1;
}
2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.03.2016, 16:10

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Кнопка, убегающая от указателя мыши
Помогите написать программу!! Надо чтобы елемент button при контакте с курсором мыши &quot;убегал&quot; от...

Убегающая кнопка от курсора - нужен пример
Всем привет...помогите пожалуйста... вот пытаюсь сделать так чтобы при наведении курсора кнопка...

Убегающая кнопка без застревания в углах
В диалоговом окне есть вопрос &quot;ты дурак?&quot; и 2 кнопки(да.нет)нужно,чтобы кнопка нет убегала при...

"Убегающая кнопка", ошибка: Невозможно присвоить значение свойству или индексатору
Подскажите пожалуйста в чем ошибка, есть часть рабочего кода когда пытаюсь переделать направление...

Во общем ситуация такая. Есть форма на форме кнопка. Кнопка запускает метод. После запуска метода форма умирае
Во общем ситуация такая. Есть форма на форме кнопка. Кнопка запускает метод. После запуска метода...

Кнопка button1 должна закрывалась после последнего введённого массива, после чего должна открыться кнопка button2
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.