tool__ Ответов: 1

Помощь с отображением и скрытием изображений в C#


У меня есть программа, которая отображает фоновое изображение, и я хочу установить небольшую область этого изображения, например, когда я щелкаю в этой области мышью, чтобы отобразить другое маленькое изображение в другом месте поверх фонового изображения, а затем, когда я снова щелкаю в этой области, чтобы скрыть маленькое изображение, которое отображалось при предыдущем щелчке.

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

Помогите здесь ребята

Спасибо

Что я уже пробовал:

пока ничего
nothing yet
nothing yet

OriginalGriff

Мы более чем готовы помочь тем, кто застрял, но это не значит, что мы здесь, чтобы сделать все это для вас! Мы не можем сделать всю работу, вам либо платят за это, либо это часть ваших оценок, и было бы совсем несправедливо, если бы мы сделали все это за вас.

Поэтому нам нужно, чтобы вы сделали эту работу, и мы поможем вам, когда вы застрянете. Это не значит, что мы дадим вам пошаговое решение, которое вы можете сдать!
Начните с объяснения, где вы находитесь в данный момент и каков следующий шаг в этом процессе. Затем расскажите нам, что вы пытались сделать, чтобы этот следующий шаг сработал, и что произошло, когда вы это сделали.

Ralf Meier

Я полностью согласен с О. Г.
Но чтобы дать вам совет : если вы работаете с Windows.Формы - сделайте несколько тестов с помощью PictureBox-Control ...

tool__

Спасибо за ваш ответ, мне не платят за этот проект, и я никогда не был студентом, я только закончил среднюю школу, эта программа, которую я пытаюсь сделать, предназначена для личного использования, я не планирую ее продавать, и я не думаю, что это будет стоить чего-то в деньгах в любом случае, поэтому я прошу вашей доброй воли в этом. Я не прошу вас делать ВСЮ работу за меня, просто чтобы немного помочь мне в C#, где у меня ограниченные знания

Единственное, что я попытался сделать, - это справиться с PictureBox.Нажмите событие и загрузите маленькую картинку, но для этого нужно нажать на саму картинку, чтобы что-то активировать, и я хочу отобразить картинку из третьей отдельной области...

1 Ответов

Рейтинг:
2

CPallini

Просто сделайте это, это просто. Запишите положение щелчка мыши, выдайте перекраску, рисуя (или не рисуя) маленькое изображение поверх фонового. Смотрите, например .net - как я могу нарисовать небольшое изображение поверх изображения с помощью графической библиотеки C# ? - переполнение стека[^].


tool__

Как записать положение щелчка мыши?

CPallini

Храните значения свойств X,Y переданного объекта. MouseEventArgs переменная
(см. https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.mouseeventargs?view=netframework-4.7.2) в переменных-членах вашей формы.

tool__

Спасибо за ответ, но, как я уже сказал выше, мои знания в C# ограничены, к сожалению, не кажутся мне простыми...

У меня была идея перетащить picturebox поверх фонового изображения, размерить его в той области, где я хочу событие click, а затем не загружать на него изображение, а просто сделать его прозрачным... к сожалению, я не мог сделать его прозрачным ни с одним из параметров в свойствах...

Есть какие-нибудь идеи, если каким-то образом окно изображения может стать прозрачным, чтобы фоновое изображение было видно через него?

Ralf Meier

1-й клик - событие не исходит из вашего Picturebox-оно исходит из фона (возможно, другого PictureBox ? или ваша форма ?).
Если вы получаете этот щелчок, вы должны проверить положение мыши для дальнейших действий ...