Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];

Вниз

Альтернатива TCanvas и указателям?   Найти похожие ветки 

 
OFF   (2004-06-25 07:56) [0]

Пишу небольшой программатор для гирлянды на 4 канала. Понятно, что у лампочки 2 состояния (горит, не горит) и все это происходит во времени. Для хранения параметров использую указатели, а для визуализации TPaintBox и TCanvas. Таким образом пользователь видит на экране четыре полоски на которых местами располагаются прямоугольнички (периоды в течение которых лампа горит).
Читал, что использование указателей считается дурным тоном, но это первое, что пришло в голову :) Я бы так все и оставил, но нужно реализовать грамотный drag&drop, в частности смену курсора при наведении, перетаскивании и изменении границ. А как я понимаю, у канвы нет OnMouseMove и OnMouseOver.
Да и вообще хотелось бы услышать альтернативы организации подобной проги.


 
Digitman ©   (2004-06-25 08:53) [1]


> Читал, что использование указателей считается дурным тоном


немедленно выкинь эту позорную книжуленцию в мусорный бак


> нужно реализовать грамотный drag&drop,


как это связано с "указателями" ?

drag&drop - технология
указатель - термин

технология может подразумевать термин, но не наоборот


 
Off   (2004-06-25 09:40) [2]

Т.е. указатели можно оставить, а вот с конвой как?


 
Digitman ©   (2004-06-25 11:30) [3]


> Off   (25.06.04 09:40) [2]
> Т.е. указатели можно оставить, а вот с конвой как?


в огороде бузина, в киеве дядька ...

снова я не понял тебя - старый-тупой стал ...

скажи на милость, как по-твоему связаны "указатель"  и "конва" ?


 
Alex44   (2004-06-25 11:53) [4]

Kak naschet TPainBox.OnMouse... ?


 
Off   (2004-06-25 12:15) [5]

// [3]

Да не переживай, не такой уж ты и старый. Это я программер недоделаный. А конва и указатели никак не связаны. Разве, что конву я строю на основе значений указателей, а так больше никак.
Тока я хотел спросить что еще можно юзать кроме конвы, так чтобы все получилось

// [4]
Тогда TPainBox.OnMouseMove придется при каждом шаге мыши перебирать все указатели на предмет совпадения координат, дабы сменить курсор. Думаю это негативно скажется на работе приложения

Спасибо Tikunow Wladimir, но есть вопрос где взять DesingEditors.dcu


 
Rem   (2004-06-25 12:25) [6]

Что есть по-вашему указатель - тип данных "pointer" или "mouse cursor"?


 
Off   (2004-06-25 12:41) [7]

// [6]

"Указатель представляет собой прерменную, значением котрой является адрес начала размещения некоторых данных в основной памяти. Иными словами, указатель содержит ссылку на соответствующий объект. Указатели могут ссылаться на данные любого типа. Переменные типа указателя являются динамическими - значения их определяются во время выполнения программы."
Гофман В. Э., Хомоненко А. Д. Delphi 6. СПб.: БХВ-Петербург, 2002. (стр. 81)
Я полагаю я ответил на вопрос, что есть указатель, но право, я не понял вашего интереса


 
Rem   (2004-06-25 13:06) [8]

[7] - мне приятно, что Вы ради меня потрудились, набирая этот текст. Но, простите, зря Вы это. Не стоило, право...


> Думаю это негативно скажется на работе приложения

Ну, если ваша гирлянда из миллиона лампочек...


 
Digitman ©   (2004-06-25 13:34) [9]


> конва и указатели никак не связаны


Слава тебе, кпсс, разобрались наконец-то) ... оказывается указатели указателями, а канва канвой... указатель, оказывается, прекрасно жил и живет ДО того как Борланд счастливо разрешился бременем "канвы", но уж никак не наоборот - причинно-следственная связь между событиями никак не канает ...


> конву я строю на основе значений указателей


ну уж это твоя личная сексдрама ... строишь значит строишь, так тому и быть .. но хотелось бы заметить, что во избежание сомнений и безо всяких там "указателей" можно было бы обойтись


> что еще можно юзать кроме конвы, так чтобы все получилось


конва, она ведь не сама по себе живет

канва по сути просто инкапсулирует ф-ции ОС API, отвечающие за отрисовку граф.образа на контексте граф.устройства

с тем же успехом ты мог бы рисовать прямо на DC окна или, на худой конец, воспользоваться для вывода в окно изображения технологией DirectDraw .. в "худом конце" я, правда, шибко сомневаюсь, потому что лампочки твои и полосочки и безо всяких "концов" будут быстро и красиво отрисовываться практически в любом мыслимом количестве - это же не 3D-анимация с текстурированием..


 
Огромное Кулясище   (2004-06-25 15:15) [10]

Попахивает векторным редактором.


 
ПЛОВ   (2004-06-26 12:38) [11]


> это же не 3D-анимация с текстурированием

Программа для управления гирляндой с 3D-анимацией и текстурированием ))))) круто!!! сразу и видно как эта гирлянда будет выглядеть на елке в комнате!!! Системные требования не жалей - минимум 2.5Ghz 512 DDR 64 Video... Есть возможность добавления ботов, создания своих карт...
)))))))


 
Колбасьев ©   (2004-06-27 13:40) [12]

Используй сообщение wm_MouseEnter (или что-то в этом роде).
Срабатывает при входе в область компонента, а MouseLeave - при выходе.
Делал я как-то PaintBox с этими двумя событиями. Классно работает (потом на нем целую иерархию сделал: кнопочки, области и т.д.)


 
Off   (2004-06-28 07:15) [13]

// [12]
Вот это предметный разговор, не то что остальные - только прикалываются.
Может все же найдется где-то кусочек кода?


 
Dufa   (2004-06-28 10:12) [14]

Альтернатива - TShape
Цвета меняются, можно таскать(грамотный drag&drop),
лучше кружок расцвечивать, а не квадратик.

Ещё альтернатива - TImage
Лучше нарисовать картинки по количеству цветов и менять их,
если состояние лампочки изменилось (если нужна красота - 3-х мерные лампочки с тенями и спиралью),можно таскать(drag&drop)



Страницы: 1 вся ветка

Форум: "Media";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.029 c
3-1093222775
Jedu
2004-08-23 04:59
2004.09.19
Как изменить цвет строки в DBGrid е?


11-1080734538
nester
2004-03-31 16:02
2004.09.19
Как в рантайм у формы поменять borderStyle?


3-1092981936
Ol
2004-08-20 10:05
2004.09.19
Экспорт текстового файла в dbf


14-1093770941
able
2004-08-29 13:15
2004.09.19
Вопрос по ноутбукам.


14-1093948712
VID
2004-08-31 14:38
2004.09.19
Регистрация: что для этого нужно ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский