Итак, у меня есть форма и метка, которые полностью прозрачны, и должен быть виден только текст. Но всякий раз, когда я запускаю программу, текст выглядит так (черный цвет с моего рабочего стола):
Что я сделал, чтобы сделать форму прозрачной, так это установил для FormBorderStyle значение None, для ключа Transperency Key значение Transparent и Opacity на 100% для метки. Я просто установил для нее значение White, что сделало ее прозрачной.
Моя цель - иметь наложение рабочего стола для отображения информации, также, если бы я мог сделать это так, чтобы вы могли щелкнуть мышью, бросить текст, это было бы идеально.
Спасибо за любую помощь!
РЕДАКТИРОВАТЬ:
Вот код, который я сейчас использую для события Form1_Load:
this.FormBorderStyle = FormBorderStyle.None;
this.Opacity = 100;
this.TransparencyKey = Color.Transparent;
this.BackColor = Color.White;
label1.ForeColor = Color.Orange;
label1.Text = "test" + Environment.NewLine + "test";
1 ответ
Поэтому я отвечаю на свой вопрос, потому что у других людей может быть такая же проблема. В итоге я использовал событие Paint в форме, предложенное Треем. Также из того, что я обнаружил, эта опция не существует для ярлыков. Вот код, который у меня сработал:
g.SmoothingMode = SmoothingMode.AntiAlias;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.PixelOffsetMode = PixelOffsetMode.HighQuality;
g.TextRenderingHint = TextRenderingHint.SingleBitPerPixelGridFit; // This makes the diffrence otherwise it does look exactly the same!
g.DrawString("yourText", new Font("Tahoma", 30), Brushes.Black, 100,100);
Похожие вопросы
Новые вопросы
c#
C # (произносится как «резкий») - это высокоуровневый, статически типизированный язык программирования с несколькими парадигмами, разработанный Microsoft. Код C # обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, включая, среди прочего, .NET Framework, .NET Core и Xamarin. Используйте этот тег для вопросов о коде, написанном на C # или в формальной спецификации C #.