Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сравнение координаты X кнопки и координаты X формы, Сравнение координаты X кнопки и координа 
:(
    Опции темы
zaksys
Дата 5.10.2011, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 31.5.2008
Где: Красноярск

Репутация: нет
Всего: нет



Добрый день, знаю. Что это очень простой вопрос, но под рукой нету справочника в MSDN нужно найти не могу. Или понять не могу, где искать нужно. Помогите пожалуйста, я очень хочу разобраться в этом деле.
PM MAIL Skype   Вверх
semibug
Дата 7.10.2011, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 323
Регистрация: 27.3.2009

Репутация: нет
Всего: нет



Вероятно у кнопки и формы есть средства для получения X-координаты, получаем значения и сравниваем (если значения X-координаты могут быть не целочисленными, то сначала вычисляем разницу между координатами, затем сравниваем эту разницу с допустимым отклонением).
Если это стандартные кнопка и форма NET созданые дизайнером в студии, то название поля координаты можно увидеть на вкладке свойств (подвигав кнопку и заметив какие поля меняются).

PM   Вверх
zaksys
Дата 7.10.2011, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 31.5.2008
Где: Красноярск

Репутация: нет
Всего: нет



Цитата(semibug @ 7.10.2011,  10:56)
Вероятно у кнопки и формы есть средства для получения X-координаты, получаем значения и сравниваем (если значения X-координаты могут быть не целочисленными, то сначала вычисляем разницу между координатами, затем сравниваем эту разницу с допустимым отклонением).
Если это стандартные кнопка и форма NET созданые дизайнером в студии, то название поля координаты можно увидеть на вкладке свойств (подвигав кнопку и заметив какие поля меняются).

Код

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Прыгающая_кнопка1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if ((button1.Location.X < this.Height) && (button1.Location.Y < this.Width))
            {
                Random rnd = new Random();
                int newX,newY;
                newX = rnd.Next(-100, Convert.ToInt32(textBox1.Text));
                newY = rnd.Next(-5, Convert.ToInt16(textBox1.Text));
                if (((newX > 0) && (newX < 100)) && ((newY>0) && (newY<100)))
                {
                    button1.Left = newX;
                    button1.Top = newY;
                }
                else
                {
                    button1.Left = newX;
                    button1.Top = newY;
                }
            }
        }
    }
}




Просто вот был написан соответствующий код, и стало интересно. Так смещать нельзя вправо кнопку, а хочется. И не могу понять, в чем же причина, или как подобрать мне нужное свойство. button1.Right пробовал ругается к сожалению. И не понятно, почему смещает первоначально очень далеко саму кнопку, а потом вроде как нормально работает. Вообщем задача, добиться, чтобы эта кнопка прыгала по всему экрану в разных направлениях.



Это сообщение отредактировал(а) zaksys - 7.10.2011, 18:32
PM MAIL Skype   Вверх
semibug
Дата 8.10.2011, 09:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 323
Регистрация: 27.3.2009

Репутация: нет
Всего: нет



Код

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;



namespace JumpingButton

{

    public partial class Form_JumpingButton : Form

    {

        public Form_JumpingButton()

        {

            InitializeComponent();

        }



        private Random rnd = new Random();



        private int getRandom( int from, int to )

        {

            int range = to - from;

            return rnd.Next(range) + from;

        }



        private const int Space = 20;



        Point getNewRandomLocation()

        {

            Point p = new Point();

            p.X = getRandom(Space, ClientRectangle.Width - button_Jump.Width - Space);

            p.Y = getRandom(Space, ClientRectangle.Height - button_Jump.Height - Space);

            return p;

        }



        private void button_Jump_Click(object sender, EventArgs e)

        {

            try

            {

                Point newLocation = getNewRandomLocation();

                button_Jump.Location = newLocation;

            }

            catch (Exception)

            {

            

            }

            

        }

    }

}


Что-то подрастянулись строки.. Что это может быть..

Это сообщение отредактировал(а) semibug - 8.10.2011, 09:51
PM   Вверх
zaksys
Дата 8.10.2011, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 31.5.2008
Где: Красноярск

Репутация: нет
Всего: нет



Цитата(semibug @ 8.10.2011,  09:50)
Код

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;



namespace JumpingButton

{

    public partial class Form_JumpingButton : Form

    {

        public Form_JumpingButton()

        {

            InitializeComponent();

        }



        private Random rnd = new Random();



        private int getRandom( int from, int to )

        {

            int range = to - from;

            return rnd.Next(range) + from;

        }



        private const int Space = 20;



        Point getNewRandomLocation()

        {

            Point p = new Point();

            p.X = getRandom(Space, ClientRectangle.Width - button_Jump.Width - Space);

            p.Y = getRandom(Space, ClientRectangle.Height - button_Jump.Height - Space);

            return p;

        }



        private void button_Jump_Click(object sender, EventArgs e)

        {

            try

            {

                Point newLocation = getNewRandomLocation();

                button_Jump.Location = newLocation;

            }

            catch (Exception)

            {

            

            }

            

        }

    }

}


Что-то подрастянулись строки.. Что это может быть..

Спасибо большое, постараюсь разобраться в вашем коде, что значит каждая строка.
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0457 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.