Помощь - Поиск - Пользователи - Календарь
Полная версия: Массив компонентов
Форум «Всё о Паскале» > Delphi, Assembler и другие языки. > Delphi
sheka
Вот надо бы сделать массив лабелов. Но у меня это не получается.
const
b: array[1..3] of TLabel = (Label1,Label2,Label3);

подскажите как правильно.
volvo
Правильно - описывать массив Лейблов и с ним работать после описания (то есть, создавать Лейблы через
b[ i ] := TLabel.Create в рантайме). Ты же пытаешься на этапе компиляции поставить в соответствие массиву Label-ов метки, которые еще только будут созданы при инициализации формы... И кто тебе это позволит?
sheka
можешь написать пример? я везде облазил - или ничего не нашел или так запутано как в DRKB.
volvo
Ты сначала расскажи, чего тебе надо, потом может и пример будет. Зачем тебе объединять эти уже готовые Label-ы в массив?
sheka
Цитата(volvo @ 27.07.2009 17:15) *

Ты сначала расскажи, чего тебе надо, потом может и пример будет. Зачем тебе объединять эти уже готовые Label-ы в массив?

сейчас - делаю простую программу, где без этого можна обойтись.
Но у меня есть судоку на Паскале, где "клеточки" я рисовал. хочу перенести его на Делфи и использовать Buttonы. или еще в планах сделать японские кроссворды, где тоже хочу использовать массив Баттонов.
Т.е. хочу в цикле обращаться к компонентам.
volvo
Цитата
Т.е. хочу в цикле обращаться к компонентам.
Для этого есть FindComponent, или цикл по всем компонентам + проверка, не имеет ли этот компонент нужный тебе тип (ну, или еще какой-нибудь признак, например, Tag).
amega
Цитата
и использовать Buttonы

а чем стингрид не подходит под клеточки?
sheka
я думал, что все намного проще...
Тогда буду пробовать чуть позже..
volvo
Цитата
я думал, что все намного проще...
Может и проще. Если не бездумно переводить программу с одного языка на другой, а подобрать правильные компоненты. Тогда, может быть, и не понадобится никаких сложностей.
Rian
Я когда-то делал прогу для разгадывания японских кросвордов (шоб не карандашом бумагу пачкать smile.gif))
задаешь размеры сетки, количество чисел
жмёшь кнопочку генерировать и создаются timage нужной ширины
их двигаешь
а снизу считаются контрольные числа... прикольно, жаль посеял где-то
sheka
Цитата(volvo @ 27.07.2009 17:48) *

Может и проще. Если не бездумно переводить программу с одного языка на другой, а подобрать правильные компоненты. Тогда, может быть, и не понадобится никаких сложностей.

Вот сама программа.Нажмите для просмотра прикрепленного файла
делал очень давно, реализацию уже и сам не очень-то помню. smile.gif
подскажите как лучше ее перевести на делфи. (ведь паскалевские приложения не везде запускаются!)
и насчет алгоритма, если будет желание, может скажете как ускорить rolleyes.gif
Цитата
а чем стингрид не подходит под клеточки?

а я и не подумал...

Добавлено через 5 мин.
Цитата(feniks25 @ 27.07.2009 20:17) *

Я когда-то делал прогу для разгадывания японских кросвордов (шоб не карандашом бумагу пачкать smile.gif))

можешь на мою взглянуть?
Цитата
задаешь размеры сетки, количество чисел
жмёшь кнопочку генерировать и создаются timage нужной ширины
их двигаешь
а снизу считаются контрольные числа... прикольно, жаль посеял где-то

что-то я не понял - подробнее пожалуйста.
а она у тебя еще и генератором была?
Rian
)) красивенько в паскале намалевал
но судоку сколько не пытался понять чет не идёт она мне

генератор? ну не знаю. а что? по данным массива строишь фигурки
потом ими двигаешь

или ты имеешь ввиду по рисунку построить таблицы чисел?
sheka
Цитата(feniks25 @ 27.07.2009 20:45) *

)) красивенько в паскале намалевал

первая графическая работа - вот и извращался.

Цитата

но судоку сколько не пытался понять чет не идёт она мне

генератор? ну не знаю. а что? по данным массива строишь фигурки
потом ими двигаешь

или ты имеешь ввиду по рисунку построить таблицы чисел?

извини, я тебя вообще не понимаю. можешь точнее объясняться?
Rian
Цитата(sheka @ 27.07.2009 20:50) *

извини, я тебя вообще не понимаю. можешь точнее объясняться?


блян, ну че не ясно?
есть поле, есть размеры непрерывных кубиков, представь что кубики это кнопки разной ширины wacko.gif
ООО, горизонтальная полоса прокрутки, тока полос больше
как ещё?

ЗЫ для судоку тебе нужен простой stringgrid и пара кнопок
и будет выглядеть также как в паскале, конечно и тут можно украшательством поразвлечься
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.