| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > TForm |
| Автор: Ragli 4.4.2007, 17:47 |
| Здравствуйте Вот перед компиляцией на любой форме есть сетка(точки на п всей форме), но после компиляции эта сетка исчезает,как сделать так чтобы на оставалась? Спасибо |
| Автор: _hunter 4.4.2007, 17:51 |
| самому рисовать. эта сетка только в design-time'е для удобства разработки рисуется. |
| Автор: Sunvas 4.4.2007, 18:22 |
| Ragli, А что тебе надо? Чтобы точки на форме были, или чтобы компоненты можно было точно также таскать? Правильно сказал _hunter, эта сетка для удобства дизайнера, а не программный эффект. |
| Автор: Snowy 4.4.2007, 18:31 | ||
Альтернативный простой вариант:
Добавлено через 40 секунд Это правда не совсем точечки. Просто для точечек несколько больше кода... |
| Автор: Ragli 4.4.2007, 19:08 |
| Просто мне надо будет мышкой рисовать,и пожэтому по сетке легче ориентироваться А не подскажешь как можно в ToolBar задать чтоб был только один ряд, просто я перевернул его вертикально,и когда 5-8 кнопок размещаю, то смещается на два ряда вертикальных,как сделать 1 ряд? Спасибо |
| Автор: Snowy 4.4.2007, 19:46 |
| Модератор: Пожалуйста, один топик - один вопрос. Не лепи всё в кучу |
| Автор: ivan219 4.4.2007, 21:40 | ||
Вот тебе и сетачка
|
| Автор: ivan219 4.4.2007, 21:57 | ||||||
Хотя вот так новерное будет быстрее.
И ещё один вареант
Через ScanLine
|
| Автор: Snowy 4.4.2007, 23:03 |
| Все варианты медленные. Быстрее кисти всё равно несделаешь. А тем более через ScanLines ;-) |
| Автор: ivan219 5.4.2007, 00:58 | ||
А почему? |
| Автор: Alexeis 5.4.2007, 09:43 |
| ivan219, Не забывай, для работы ScanLine необходим DIB, работа с которым медленнее чем с DDB, потому, что таким образом не используется аппаратное ускорение видеокарты. А для DDB используется. |
| Автор: Rennigth 5.4.2007, 09:56 |
| Помню ведь было.... http://forum.vingrad.ru/index.php?showtopic=21411&view=findpost&p=478684 |
| Автор: Snowy 5.4.2007, 10:27 |
| Rennigth, это ты к чему? Добавлено через 2 минуты и 41 секунду А, понял. Промахнулся топиком Но вариант тот же - через ScanLines и достаточно медленный. От такого кода 433-й пень сдохнет нафиг. |
| Автор: Yanis 5.4.2007, 10:30 |
Он видимо ссылку перепутал. В «арсенале» был код для рисования сетки. http://forum.vingrad.ru/index.php?showtopic=21411&view=findpost&p=496254 Добавлено через 1 минуту и 19 секунд Где там сканлайн то? В упор не вижу. |
| Автор: Snowy 5.4.2007, 10:53 | ||
| Ну да. Это я перехвалил. Pexels - самый медленный способ. Даже сканлайны в несколько раз быстрее. Вам так принципиальны именно точки? Человеку просто разметка нужна была. Добавлено через 4 минуты и 30 секунд Хотите точки. Ради бога. Ловите:
|
| Автор: Snowy 5.4.2007, 11:17 | ||
А, ну да, ну да. Не дочитал... Просто много ненужного кода. Да и размещать создание и убийство битмапов в отрисовщике нелогично. Зачем, если он юзается постоянно... Создал и фсё. Ну собсна, я уже привёл код, как должно быть |
| Автор: Yanis 5.4.2007, 11:48 | ||||
| Предлагаю вариант от джедаев Я в них почему то уверен.
И от меня добавка
|
| Автор: Snowy 5.4.2007, 12:22 |
| А я в них давно разочаровался ;-) И данный код - лишнее тому подтверждение... |
| Автор: ivan219 5.4.2007, 12:51 | ||
| Snowy, Твои два кода которые ты при вёл некоректно работают если менять размер формы в Run-Time то получаем бяку Добавлено через 2 минуты и 36 секунд И ещё я так и непонял как этот код рисует точки
может кто разяснит, распишит по подробнее? |
| Автор: Snowy 5.4.2007, 13:06 | ||
Нажми галочку выпадающего списка и выбери Form1Paint ;-) |
| Автор: ivan219 5.4.2007, 13:47 | ||
Окакая хитрая штука |
| Автор: Yanis 5.4.2007, 14:58 |
А можно узнать, что конкретно не устраивает? |
| Автор: Snowy 5.4.2007, 15:06 |
| Ну дык. Практически худший код из предложенных. Если бы писал студент 1-го курса, то да - это 5 - код работает. Но, с точки зрения практикующего дельфиста - 2 с плюсом. Плюс за то, что он всё таки работает. |
| Автор: Yanis 5.4.2007, 15:48 |
Об этом и вопрос. Мне интересно твоё мнение, что именно там плохо. По моему работает достаточно быстро. |
| Автор: Snowy 5.4.2007, 16:20 |
| Внешне? Что быстрее 8000 вызовов SetPixel или один вызов Rectangle? А при 30 отрисовках в секунду? Нет, конечно, когда проц за 2 ГГц и других задач нет - только точечки рисовать, то можно и пренебречь такой мелочью, как пара сотен тысяч лишних операций... Главное, чтоб работало Именно так и рассуждают индийские и китайские программисты |