| 
| 
 | Вопрос # 5 241/ вопрос открыт / | 
 |  Здравствуйте! Хотел бы проконсультироваться по поводу того, как лучше сделать следующую программу:
 смысл программы: нужно составить короткие слова из букв одного длинного.
 
 Например, исходное слово ОГОРОД, каждая буква отображается на отдельном Image и есть поле из 3рех пустых Image, на которое мы перемещаем Image с буквами слова (на клик присваиваем Image с буквами координаты пустых Image поля в зависимости от значения переменной, которая определяет какую именно букву перемещать)
 
 И при составлении слов, таких как РОД, РОГ, ГОД определенным image (c этими готовыми словами) присваивается Visible:=true;
 
 Изначально я делал на основе отслеживания координат букв, но это очень много занимает времени и получается огромный код (и когда в конце-концов у тебя где-то ошибка, которая не мешает работе программы, но не позволяет ей правильно работать, отследить ее нереально).
 
 Не подскажите, можно ли это как-то проще сделать? Спасибо.
 
|  |   Вопрос задал: D@nte (статус: Посетитель)Вопрос отправлен: 28 апреля 2011, 16:52
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 12; последнее сообщение — 2 мая 2011, 15:47; участников в обсуждении: 3. 
|   | min@y™ (статус: Доктор наук), 28 апреля 2011, 16:57 [#1]:Громоздкий код получается именно от того, что ты используешь TImage как ключевой отображающий компонент. Я бы так делать не стал, а рисовал бы всё это безобразие на едином Canvas и не парился. Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | Мережников Андрей (статус: Абитуриент), 28 апреля 2011, 20:13 [#2]:я бы сделал так: 1)объявил массив char, размером по количеству букв в исходном длинном слове;
 2) заполнил бы его соответствующими символами;
 3) свойство tag у Image использовал как индекс элемента массива с соответствующей буквой;
 4) перетаскивание букв реализовал через Drag&Drop
 |  
|   | D@nte (статус: Посетитель), 28 апреля 2011, 23:14 [#3]:Мережников Андрей, а не могли бы Вы как-нибудь сделать простенький пример программы с данным алгоритмом? Просто с моими знаниями Delphi трудно так сразу сориентироваться... Заранее спасибо. |  
|   | Мережников Андрей (статус: Абитуриент), 29 апреля 2011, 05:43 [#4]:какая именно часть алгоритма вызывает наибольшие затруднения? |  
|   | D@nte (статус: Посетитель), 29 апреля 2011, 08:18 [#5]:Мережников Андрей, все, что связано с массивом. (...Я даже не знаю на какой вкладке он лежит) |  
|   | min@y™ (статус: Доктор наук), 29 апреля 2011, 08:32 [#6]: Цитата (D@nte): Мережников Андрей, все, что связано с массивом. (...Я даже не знаю на какой вкладке он лежит)  Похоже, ты не с той стороны изучаешь программирование - не знаешь элементарнейших вещей, которые надо знать в первую очередь, а уже пытаешься написать что-то визуальное. Массивы - это не компоненты (их нет ни на какой вкладке) и даже не классы.
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | Мережников Андрей (статус: Абитуриент), 29 апреля 2011, 12:01 [#7]:Согласен с min@y - с такими знаниями рановато браться за такую задачу. Начинать надо с чего-то попроще. |  
|   | D@nte (статус: Посетитель), 29 апреля 2011, 14:14 [#8]:Мережников Андрей, min@y™, спасибо за помощь) |  
|   | min@y™ (статус: Доктор наук), 29 апреля 2011, 14:22 [#9]: Цитата (D@nte): спасибо за помощь Да за что спасибо-то? Я ж ничем не помог. Только пендаля дал в нужном направлении.
   Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | D@nte (статус: Посетитель), 29 апреля 2011, 14:26 [#10]:min@y™, это тоже иногда бывает нужно) Не обижаться же мне на весь мир из-за того, что я массивы не отстреливаю)   |  
|   | min@y™ (статус: Доктор наук), 29 апреля 2011, 14:43 [#11]: Цитата (D@nte): это тоже иногда бывает нужно) Не обижаться же мне на весь мир из-за того, что я массивы не отстреливаю) Мой тебе совет (бесплатный): скачай хорошую книжку по delphi и начни читать её с самого начала. И только когда прочитаешь, будешь пользоваться ей, как справочником. Могу дать ссылку на книжку, по которой я сам учился.
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |