Увидев, что рисунок на рабочем столе очень грязный, я решил просто исследовать его. Я понял, что многие люди предлагают создать прозрачный WinForm, который является размером экрана и при этом ударяет панель, и используя это для рисования графики. Поэтому я проверил его, но столкнулся с множеством ошибок. Сначала моя вторая форма (Form2) не показывалась, поэтому мне пришлось поместить ее в другой поток и поставить Form2.ShowDialog();
на этот поток. После того, как я убрал эту проблему, я фактически подошел к панели. Теперь моя форма никогда не будет отображаться, но я вижу, что она работает на панели задач. Каждый раз, когда я пытаюсь сделать это сфокусированным окном, он никогда не работает, и всякий раз, когда я нахожу задачу, я вижу, как создаётся графика. Мой вопрос: можно ли нарисовать панель на прозрачной WinForm и сделать ее видимой? Вот код, который я использовал, в основном для поиска ошибок (рисование состояний и прочее).Могу ли я рисовать на панели прозрачной WinForm?
void Draw()
{
while (true)
{
SolidBrush redpen = new SolidBrush(Color.Red);
Font font = new Font("Arial", 16);
PointF point = new PointF(700, 150);
Graphics g = panel1.CreateGraphics();
g.DrawString(Main.state.ToString(), font, redpen, point);
Main.beginTime.Stop();
Main.TimeRan = Main.beginTime.Elapsed;
string amountOfTime = string.Format("{0:00}:{1:00}:{2:00}.{3:00}", Main.TimeRan.Hours, Main.TimeRan.Minutes, Main.TimeRan.Seconds, Main.TimeRan.Milliseconds/10);
point = new PointF(700, 200);
g.DrawString(amountOfTime, font, redpen, point);
Thread.Sleep(10);
panel1.Refresh();
}
}
private void Form2_Shown(object sender, EventArgs e)
{
Draw();
}
Где-то в главном классе
// In a method
Thread F2T = new Thread(FormHandlers);
F2T.Start();
private void FormHandlers()
{
Form2 Form2 = new Form2();
Form2.Opacity = 0.00;
Form2.ShowDialog();
}
Edit: После некоторого тестирования я заметил, что с уменьшением непрозрачности Непрозрачность Письма уменьшается, а, я могу это сделать так, чтобы панель прозрачна, но строка, которую я рисую, чтобы рисовать внутри, не так ли?
Что вы хотите нарисовать по форме? –
Моя программа основана на состоянии, поэтому текущее состояние включено и количество времени прошло – Ipwnusck