Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2011, 14:06   #1
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию Как организовать выделение в PaintBox'е?

Всем доброго времени суток, хочу сделать возможность выделения, примерно как это сделано здесь:



Есть идея рисовать прямоугольник, но тогда не будет видна область выделения под прямоугольником
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли
Marsel737 вне форума Ответить с цитированием
Старый 19.05.2011, 14:20   #2
Swarog
Форумчанин
 
Аватар для Swarog
 
Регистрация: 26.01.2010
Сообщений: 215
По умолчанию

без заливки примерно так

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

В событии курсор сдвинут проверяешь зафиксирована ли первая позиция, если да то рисуешь квдрат из первой позиции в текущую позицию под курсором

по событию мыши кнопка вверх возвращаешь все в исходное состояние, если надо что сделать с объектами в выделении делаешь так же в этом же обработчике
Могу лишь пнуть в нужном направлении (ну или как получится)
Swarog вне форума Ответить с цитированием
Старый 19.05.2011, 14:25   #3
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию

Swarog, я так то это и имел ввиду, говоря

Цитата:
Сообщение от Marsel737 Посмотреть сообщение
Есть идея рисовать прямоугольник
Сделать так, как ты говоришь не проблема, проблема в том, что

Цитата:
Сообщение от Marsel737 Посмотреть сообщение
не будет видна область выделения под прямоугольником
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли
Marsel737 вне форума Ответить с цитированием
Старый 19.05.2011, 14:29   #4
Swarog
Форумчанин
 
Аватар для Swarog
 
Регистрация: 26.01.2010
Сообщений: 215
По умолчанию

а ты нарисуй 4 линии, требуется одна команда moveto и четыре lineto, тогда внутри ни чего не закрасится
Могу лишь пнуть в нужном направлении (ну или как получится)
Swarog вне форума Ответить с цитированием
Старый 19.05.2011, 14:32   #5
Swarog
Форумчанин
 
Аватар для Swarog
 
Регистрация: 26.01.2010
Сообщений: 215
По умолчанию

еще вариант через GDI+ рисовать картинку с прозрачностью... точнее нужно будет 9 картинок 4 угла 4 стороны и заливка центра, углы рисуешь без масштабирования, стороны растягиваешь либо по высоте либо по ширине, центральную заливку растягиваешь по всем измерениям
Могу лишь пнуть в нужном направлении (ну или как получится)
Swarog вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как организовать цикл ? Nikmichsch Общие вопросы Delphi 21 06.02.2011 19:32
Как организовать хеш? Utkin Общие вопросы по программированию, компьютерный форум 12 04.01.2011 09:31
нужно организовать динамическое выделение памяти через ** и файловый ввод - вывод anybkarnak Помощь студентам 4 11.06.2010 21:33
как организовать цикл? Aqil_f Microsoft Office Excel 3 03.06.2009 10:13
Как лучше организовать базу данных типо как в ICQ Руслантус БД в Delphi 3 09.08.2008 23:57