3 / 3 / 2
Регистрация: 27.09.2009
Сообщений: 200

Появляется горизонтальная линия при попадании курсора в нарисованную область

05.01.2012, 20:25. Показов 1751. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1)Вот я нарисовал на форме какой нибудь рисунок, почему если навести на этот рисунок курсор мыши то происходит перерисовка горизонтальной линии на которой находится курсор??
2)Есть ли какие нибудь стандартные функции для перерисовки фигур нарисованных методами класса graphics ?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.01.2012, 20:25
Ответы с готовыми решениями:

Клик по кнопке осуществлять не при попадании курсора в ее область, а в область картинки на ней
Делаю вместо кнопки картинку. Хочу чтобы когда курсор наводишь на кнопку , нажатие работало не когда попадаешь в квадратную область кнопки,...

Очистка TextBox при попадании в него курсора
Добрый день всем. Подскажите пожалуста как при попадании курсора в TextBox он удалял надпись Заранее спасибо.

При попадании курсора мыши на кнопку изменить ее положение
procedure TForm2.OnMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Form2.Button2.Left:=random(500)+5; ...

7
программист С++
 Аватар для sandye51
860 / 600 / 147
Регистрация: 19.12.2010
Сообщений: 2,014
05.01.2012, 23:42
Цитата Сообщение от xam max Посмотреть сообщение
Вот я нарисовал на форме какой нибудь рисунок, почему если навести на этот рисунок курсор мыши то происходит перерисовка горизонтальной линии на которой находится курсор
каким образом нарисовал? программно?

Цитата Сообщение от xam max Посмотреть сообщение
Есть ли какие нибудь стандартные функции для перерисовки фигур нарисованных методами класса graphics
какой-то тупой вопрос честно говоря. При каждом вызове функции перерисовки с Graphics все стирается и рисуется заново. Следовательно - делайте что хотите

а в чем задача то состоит?
0
3 / 3 / 2
Регистрация: 27.09.2009
Сообщений: 200
06.01.2012, 20:00  [ТС]
каким образом нарисовал? программно?
вот таким:
C++
1
2
3
Pen ^pen=gcnew Pen(Color::Red,2);
    Graphics ^im=panel1->CreateGraphics();
    im->DrawEllipse(pen,е->x,e->y,20,20);
а потом если навести курсор на нарисованный кружочек то горизонтальная линия, на которой он находится, стирается, то есть получается что поводя курсором по экрану можно все стереть.
какой-то тупой вопрос честно говоря. При каждом вызове функции перерисовки с Graphics все стирается и рисуется заново
в моем случае
C++
1
2
обработчик события изменения размера формы
        panel1->refresh();
все кружки просто стираются и все.
Вообще задача написать простенький граф редактор, но мне сейчас важно понять мелочи, ибо я вообще полный ноль в этом виндуз формс
0
программист С++
 Аватар для sandye51
860 / 600 / 147
Регистрация: 19.12.2010
Сообщений: 2,014
06.01.2012, 20:03
xam max, все эти рисования сохраняются до следующей перерисовки, поэтому тебе надо хранить все твои фигуры и заново отображать при каждой перерисовке
0
3 / 3 / 2
Регистрация: 27.09.2009
Сообщений: 200
06.01.2012, 20:11  [ТС]
Да, это я уже понял, но почему курсор то стирает? кроме обработчика изменения размера формы и клика по панели я ничего не писал.
0
программист С++
 Аватар для sandye51
860 / 600 / 147
Регистрация: 19.12.2010
Сообщений: 2,014
06.01.2012, 20:45
xam max, может скинешь проект в лс?
0
3 / 3 / 2
Регистрация: 27.09.2009
Сообщений: 200
06.01.2012, 20:58  [ТС]
так все равно ж в нем ниче нет, один обработчик и панель на форме, смысл?
0
BagirA-tan
12.12.2012, 16:35
Здравствуйте.
У меня небольшая проблема с перерисовкой окна в приложении Windows Form. Моя программа при выборе пункта меню рисует графический примитив.

C++
1
2
3
4
5
6
7
{
                Pen^ MyPen = gcnew Pen( Color::Black );
        System::Drawing::Graphics^ formGraphics;
        formGraphics = this->CreateGraphics();
                Rectangle rect = Rectangle(50,50,100,100);
            e->Graphics->DrawRectangle( MyPen, rect );
          }
При выполнении данного кода, изображение появляется только после того, как я сверну и разверну окно. Я добавила строку:

C++
1
Invalidate();
Картинка появилась сразу после выбора пункта меню, но начала мигать. Если это происходит в результате постоянной перерисовки окна, то подскажите, как сделать, чтобы перерисовка прошла один раз. Если это что-то другое, подскажите, пожалуйста, как от этого мигания избавиться
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.12.2012, 16:35
Помогаю со студенческими работами здесь

Как при попадании курсора на Textbox нажать на клавишу Insert?
Подскажите пожалуста, как при попобании курсора на Textbox програмным путем нажать на клавишу Insert (замена) Зарание спасибо.

Горизонтальная прокрутка при наведении курсора
Добрый день. Подскажите пожалуйста, как реализовать горизонтальную прокрутку вправо(влево) при подведении курсора к правой(левой) части...

ActionScript переход к кадру N при попадании MovieClip в заданную область
Добрый день! Есть MovieClip. Задача: переход к кадру N при попадании этого объекта MovieClip в какую-то область. Пока получилось...

При разном разрешении появляется горизонтальная прокрутка
Народ помогите пожалуйста разобраться. У меня При маленьком разрешении появляется горизонтальная прокрутка. На широком мониторе все...

Рандомное движение курсора мыши вне формы при попадании на пиксель определенного цвета
Здравствуйте, можно ли реализовать рандомное движение мыши вне формы и нажатие мыши, при наведении на определенный цвет?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru