Как остановить наложение кнопок и графических блоков?(Делая их прозрачными) - PullRequest
0 голосов
/ 10 февраля 2019

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

! [Прозрачная линия] https://imgur.com/a/Xqvwp7c

! [Скриншот формы] https://imgur.com/a/r3rkLFg

1 Ответ

0 голосов
/ 10 февраля 2019

Самый простой способ сделать это - создать фон, который является «сеткой» (все ваши линии), и добавить его в качестве фонового изображения вашей формы;затем просто добавьте кнопки в форму в конструкторе и поместите их в каждую «ячейку» вашей «сетки».

В конце игры вы можете добавить кусочки каждой линии в качестве фонового изображения длякаждая затронутая кнопка, а также изменить фон формы на одну и ту же строку - она ​​будет выглядеть как одна строка, но при этом все кнопки будут доступны для нажатия.

Есть способ сделать это и программно, нонемного сложнее с кнопками - посмотрите на метод Control.CreateGraphics(), чтобы увидеть, как рисовать с помощью GDI +.Больше информации здесь: https://docs.microsoft.com/en-us/dotnet/framework/winforms/advanced/how-to-create-graphics-objects-for-drawing

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