Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
 Аватар для DecT
0 / 0 / 0
Регистрация: 06.12.2008
Сообщений: 15

Как создать несколько объектов с разными координатами в Rectangle

24.10.2012, 14:22. Показов 2995. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть класс easyBlock, в нем описание блоков, которые должны рисовать на форме
Один блок вывести не проблема, а вот сразу несколько оказалось проблемой

Как создать несколько объектов с разными координатами в Rectangle?
C#
1
2
3
4
5
6
7
8
        public easyBlock()
        {
            width=60;
            height=25;
 
            eBlockImage = Break_Shot.Properties.Resources.eBlock;
            eBlockRec = new Rectangle(x, y, width, height);
        }

Пробовал так:

Объявил массив: easyBlock[] eArray = new easyBlock[11];
И потом:
C#
1
2
3
4
5
6
7
8
9
10
11
            
            eArray[0] = new easyBlock();
            eArray[0].x = 0;
            eArray[0].y = 0;
            for (int i = 1; i < 11; i++)
            {
                eArray[i] = new easyBlock();
                eArray[i].x = eArray[i - 1].x + 60;
                eArray[i].y = eArray[i - 1].y;
                eBlock.drawBlock(paper);
            }
Но походу это полный бред. Хелп плиз :_)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.10.2012, 14:22
Ответы с готовыми решениями:

в цикле создать несколько объектов с разными именами
Добрый день! Подскажите пожалуйста как в цикле создать несколько объектов с разными именами, отличающиеся индексом, например user1, user2 и...

Как автоматически создать несколько переменных с разными именами?
Товарищи программисты, есть строка с данными и в ней присутствуют точки, помогите пожалуйста написать цикл Который бы присваивал каждой...

Как создать сразу несколько объектов?
Ребят, как заспавнить вместо одного Coin сразу 10 например? public class Health : MonoBehaviour { public GameObject Coin; ...

5
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
24.10.2012, 14:25
DecT, написать конструктор с параметрами?
C#
1
2
3
4
5
6
7
8
9
10
11
class EasyBlock
{
   public int Width {get;set;}
   public int Height {get;set;}
   
   public EasyBlock(int width, int height)
   {
      Width = width;
      Height = height;
   }
}
C#
1
2
var eb1 = new EasyBlock(); //width == height == 0;
var eb2 = new EasyBlock(100,50); //width == 100, height == 50
и да,название класса всегда пишется с большой буквы
1
 Аватар для DecT
0 / 0 / 0
Регистрация: 06.12.2008
Сообщений: 15
24.10.2012, 14:30  [ТС]
При попытке сделать так:
C#
1
2
3
4
5
6
7
8
9
            easyBlock eBlock1 = new easyBlock(0, 0);
            eBlock1.drawBlock(paper);
            easyBlock eBlock2 = new easyBlock(60, 0);
            eBlock2.drawBlock(paper);
            easyBlock eBlock3 = new easyBlock(120, 0);
            eBlock3.drawBlock(paper);
            paper = e.Graphics;
            paddle.drawPaddle(paper);
            ball.drawBall(paper);
И добавление в клаасе в строку: public easyBlock() - public easyBlock(int x, int y)
Рисуется нечто такое:
Название: deb51f6b714baf82a925c99ed1869428.png
Просмотров: 234

Размер: 9.9 Кб
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
24.10.2012, 14:32
DecT, вы чего сделать хотите? Это картинка появляется при сбое в загрузке изображения или отрисовки.
0
 Аватар для DecT
0 / 0 / 0
Регистрация: 06.12.2008
Сообщений: 15
24.10.2012, 14:48  [ТС]
break out(арканоид)
Я создал класс(полный код):
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
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
 
namespace Break_Shot
{
    class easyBlock
    {
        public int X, Y, width, height;
        private Image eBlockImage;
        private Rectangle eBlockRec;
 
        public Rectangle EBlockRec
        {
            get {return eBlockRec; }
        }
 
        public easyBlock(int x, int y)
        {
            X = x;
            Y = y;
            width=60;
            height=25;
 
            eBlockImage = Break_Shot.Properties.Resources.eBlock;
            eBlockRec = new Rectangle(X, Y, width, height);
        }
 
        public void drawBlock(Graphics paper)
        {
            paper.DrawImage(eBlockImage,eBlockRec);
        }
    }
}
Пытаюсь сделать массив этих блоков, с разными координатами
Т.е. чтобы они при запуске формы расставлялись через определенный x,y, который указ в Rectangle(X, Y, width, height);

Добавлено через 40 секунд
Цитата Сообщение от Psilon Посмотреть сообщение
DecT, вы чего сделать хотите? Это картинка появляется при сбое в загрузке изображения или отрисовки.
На счет картинки разобрался
Но все равное прорисовывается только один блок

Добавлено через 1 минуту
Извиняюсь, забыл переменные добавить
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
24.10.2012, 14:50
DecT, я извиняюсь, я писал змейку, посмотрите класс визуализатора, может вас на какую-то мысль натолкнет. А то без кода всего проекта понять что-то трудно.
Вложения
Тип файла: rar Snake.rar (199.0 Кб, 30 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.10.2012, 14:50
Помогаю со студенческими работами здесь

Как создать несколько одинаковых объектов?
С++ , SFML. Пожалуйста, покажите на каком-нибудь простейшем примере, как отрисовать один и тот же спрайт из двух разных точек. И в идеале...

Как создать на форме несколько объектов по данным из БД
Есть база данных, из которой я делаю запрос на выборку товаров. В запросе я выбираю картинку и название товара. Как мне сделать так, чтобы...

Как программно создать несколько объектов, чтобы потом еще они и кликались???
Нужно программно создать несколько объектов, чтобы потом при нажатии на одном из них с этим объектом происходило какое нибудь действие. Ну...

Как создать Rectangle динамически?
Всем доброго времени суток!) Пишу приложение под Андроид и не могу понять в чем дело. Хочу создавать компонент Rectangle динамически, но не...

Как создать проверку столкновения Rectangle и Vector2?
Как создать проверку столкновения Rectangle и Vector2 на С#


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru