Подскажите пожалуйста, как сделать фон label1 прозрачным?
Подскажите пожалуйста, как сделать фон label1 прозрачным?
Это не работает.
1 ответ
Использование Свойство BackColor должно быть правильным, однако вам также необходимо убедиться, что для конкретного элемента управления, который вы используете, включена поддержка прозрачного фона, как указано в документации:
Свойство BackColor не поддерживает прозрачные цвета, если для значения SupportsTransparentBackColor System.Windows.Forms.ControlStyles не установлено значение true.
По умолчанию Label будет вытягивать цвет фона своего контейнера, поэтому, если он был просто непосредственно в форме, вы должны иметь возможность использовать:
В противном случае вам нужно убедиться, что этот контейнерный элемент поддерживает прозрачность и является прозрачным.
Как убрать фон у label c
Профиль
Группа: Участник
Сообщений: 12
Регистрация: 4.3.2010
Где: Украина
Репутация: нет
Всего: нет
Всем привет! Говорю сразу я новичок! Естественно много вопросов!
Вот несколько из них:
1. В Windows Form я решил сменить фон программы. Сменил! После добавил label но столкнулся с проблемой. Фон лейблов плохо смотрится на фоне формы! А я хочу что б у меня на фоне формы были только буквы без фона. Надеюсь понятно изложил вопрос.
2. Следующий вопрос скорее всего по Юникоду!
Вот у меня есть строчка:
label1.Text = summ.ToString("C");
она мне дает вывод буквы ".р" на примет. цена сандвича: 25,34 .р а мне нужно сделать цена сандвича: 25,34 .грн !
Подскажите пожалуйста как это сделать! И есть ли где-то перечень этих знаков, на будущие!
3. Вопрос по конструктору. Как мне в конструкторе сделать сетку для того что бы ровно расставлять элементы. Я в задачнику видел скриншоты формы, то там у него по всей пощаде точки. Так как мне тоже это сделать?
Буду очень благодарен если мне дадут четкий ответ без всяких приколов и ссылок типа поищи в гугле или мы уже такое обсуждали!
I think, there4 I am
Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand
Репутация: 11
Всего: 28
| Код |
| NumberFormatInfo d = new NumberFormatInfo() < CurrencySymbol = "грн" >; label1.Text = k.ToString("C",d); |
3. Увы забыл где это устанавливается. Ты в какой студии работаешь? С 2005 версии очень удобно и так выравнивания производить
Добавлено через 6 минут и 34 секунды
3. Tools-Options-Windows Forms Designer-> LayoutMode=SnapToGrid
Добавлено через 6 минут и 56 секунд
и перезапусти студию
Профиль
Группа: Участник
Сообщений: 12
Регистрация: 4.3.2010
Где: Украина
Репутация: нет
Всего: нет
CYBERDREAM огромное спасибо за помощь!
По поводу лейблов! Я сменил фон формы на рисунок, тоесть фон лейбла не подберу! Поэтому мне нужно сделать именно прозрачный фон а не такой как на форме! Я работаю в Microsoft Visual 2008.
С точками разобрался. спасибо. очень удобная вещь.
А вот с ".грн" не понял, так еще мало в чем розбераюсь! Если не трудно, я кинул код с задачника, простейшая программа, укажи пожалуйста где нужно прописать эту строчку с ".грн" а я попытаюсь понять! Буду очень благодарен!
| Код |
| using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; |
namespace WindowsFormsApplication15
<
public partial class Form1 : Form
<
private double summ;
private void Form1_Load(object sender, EventArgs e)
<
checkBox3.Enabled = false;
>
private void checkBox1_CheckedChanged(object sender, EventArgs e)
<
if (checkBox1.Checked) summ += 54.00;
else summ -= 54.00;
private void checkBox2_CheckedChanged(object sender, EventArgs e)
<
if (checkBox2.Checked)
<
summ += 24.50;
if (!checkBox3.Enabled) checkBox3.Enabled = true;
>
else
<
summ -= 24.50;
if (checkBox3.Checked) checkBox3.Checked = false;
checkBox3.Enabled = false;
>
label1.Refresh();
>
private void checkBox3_CheckedChanged(object sender, EventArgs e)
<
if (checkBox3.Checked) summ += 10.50;
else summ -= 10.50;
label1.Refresh();
>
private void checkBox4_CheckedChanged(object sender, EventArgs e)
<
if (checkBox4.Checked) summ += 18.00;
else summ -= 18.00;
label1.Refresh();
>
private void label1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
<
label1.Text = summ.ToString("C");
>
private void button1_Click(object sender, EventArgs e)
<
if (checkBox1.Checked && checkBox2.Checked &&
checkBox3.Checked && checkBox4.Checked)
<
MessageBox.Show("Вам предоставляеться скидка 10%\n" +
"Стоимоть заказа: " + (summ * 0.9).ToString("C")+
"Кафе");
>
else
<
if (checkBox1.Checked || checkBox2.Checked ||
checkBox3.Checked || checkBox4.Checked)
MessageBox.Show("Стоимость заказа: " +
summ.ToString("C"), "Кафе");
else
MessageBox.Show("Вы нечего не заказали!" +
"кафе");
private void label1_Click(object sender, EventArgs e)
<
I think, there4 I am
Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand
Репутация: 11
Всего: 28
подписывать на onpaint не стоит, можно сделать так
| Код |
| #region |
using System;
using System.Globalization;
using System.Windows.Forms;
namespace del
<
public partial class example : Form
<
private double _summ;
private readonly NumberFormatInfo _numberFormatInfo = new NumberFormatInfo
<
CurrencySymbol = ".грн"
>;
private void Form1_Load(object sender, EventArgs e)
<
checkBox3.Enabled = false;
>
private void checkBox1_CheckedChanged(object sender, EventArgs e)
<
if (checkBox1.Checked) Summ += 54.00;
else Summ -= 54.00;
>
private void checkBox2_CheckedChanged(object sender, EventArgs e)
<
if (checkBox2.Checked)
<
Summ += 24.50;
if (!checkBox3.Enabled) checkBox3.Enabled = true;
>
else
<
Summ -= 24.50;
if (checkBox3.Checked) checkBox3.Checked = false;
checkBox3.Enabled = false;
>
label1.Refresh();
>
private void checkBox3_CheckedChanged(object sender, EventArgs e)
<
if (checkBox3.Checked) _summ += 10.50;
else Summ -= 10.50;
label1.Refresh();
>
private void checkBox4_CheckedChanged(object sender, EventArgs e)
<
if (checkBox4.Checked) Summ += 18.00;
else Summ -= 18.00;
>
private void button1_Click(object sender, EventArgs e)
<
if (checkBox1.Checked && checkBox2.Checked &&
checkBox3.Checked && checkBox4.Checked)
<
MessageBox.Show("Вам предоставляеться скидка 10%\n" +
"Стоимоть заказа: " + (Summ*0.9).ToString("C", _numberFormatInfo) +
"Кафе");
>
else
<
if (checkBox1.Checked || checkBox2.Checked ||
checkBox3.Checked || checkBox4.Checked)
MessageBox.Show("Стоимость заказа: " +
Summ.ToString("C", _numberFormatInfo), "Кафе");
else
MessageBox.Show("Вы нечего не заказали!" +
"кафе");
>
>
Профиль
Группа: Участник
Сообщений: 12
Регистрация: 4.3.2010
Где: Украина
Репутация: нет
Всего: нет
I think, there4 I am
Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand
Репутация: 11
Всего: 28
| Код |
| #region |
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.Windows.Forms;
namespace randz.CustomControls
<
/// <summary>
/// A custom windows control to display text vertically
/// </summary>
[ToolboxBitmap(typeof (VerticalLabel), "VerticalLabel.ico")]
public class VerticalLabel : Control
<
private string _labelText;
private readonly Container _components = new Container();
/// <summary>
/// VerticalLabel constructor
/// </summary>
public VerticalLabel()
<
CreateControl();
InitializeComponent();
SetStyle(ControlStyles.Opaque, true);
>
/// <summary>
/// Dispose override method
/// </summary>
/// <param name = "disposing">boolean parameter</param>
protected override void Dispose(bool disposing)
<
if (disposing)
<
if (_components != null)
<
_components.Dispose();
>
>
base.Dispose(disposing);
>
[DebuggerStepThrough]
private void InitializeComponent()
<
Size = new Size(24, 100);
>
/// <summary>
/// OnPaint override. This is where the text is rendered vertically.
/// </summary>
/// <param name = "e">PaintEventArgs</param>
protected override void OnPaint(PaintEventArgs e)
<
e.Graphics.DrawString(_labelText, Font, new SolidBrush(ForeColor), 0, 0);
>
protected override CreateParams CreateParams
<
get
<
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x20; // Turn on WS_EX_TRANSPARENT
return cp;
>
>
Профиль
Группа: Участник
Сообщений: 12
Регистрация: 4.3.2010
Где: Украина
Репутация: нет
Всего: нет
I think, there4 I am
Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand
Репутация: 11
Всего: 28
Добавь класс в проект (NameSpace поменяй на свой). Собери свой солушин. Затем в тулбоксе увидишь будет создан новый компонент Label7. Ну и как обычный контрол кидай на форму
Это сообщение отредактировал(а) CYBERDREAM — 5.3.2010, 17:22
Профиль
Группа: Участник
Сообщений: 12
Регистрация: 4.3.2010
Где: Украина
Репутация: нет
Всего: нет
Создал клас, переименовал, написал код. а дальше что? Как его скомпилировать что б использовать??
Это сообщение отредактировал(а) Aderando — 9.3.2010, 19:05
I think, there4 I am
Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand
Репутация: 11
Всего: 28
Профиль
Группа: Участник
Сообщений: 12
Регистрация: 4.3.2010
Где: Украина
Репутация: нет
Всего: нет
Там написано собери проект. КАК ЕГО СОБРАТЬ? Мож сказать?
CYBERDREAM, тебе нужно будет:
1) В меню (наверху) выбрать Project —> AddClass.
2) Откроется диалог, дашь етому классу имя SingleCheckedListBox
3) Откроется страница с кодом. Код:Код
Полностью заменишь на мой (1:1, кроме коментариев)
4) Скомпилируешь проект
5) В дизайнере форм на вкладке Toolbox появится подвкладка "<Твой проект> components" появится новый контрол, его можно ложить на форму
Я не понял 4-й пункт! Как его скомпилировать??
Это сообщение отредактировал(а) Aderando — 9.3.2010, 19:36
I think, there4 I am
Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand
Репутация: 11
Всего: 28
Профиль
Группа: Участник
Сообщений: 12
Регистрация: 4.3.2010
Где: Украина
Репутация: нет
Всего: нет
У меня русская версия
Нашел, нажал..ща попробую. ток оно шото не добавилось в туулбокс!
У тебя есть ася?
Это сообщение отредактировал(а) Aderando — 9.3.2010, 20:02
I think, there4 I am
Профиль
Группа: Завсегдатай
Сообщений: 1096
Регистрация: 31.10.2006
Где: CyberLand
Репутация: 11
Всего: 28
Профиль
Группа: Участник
Сообщений: 12
Регистрация: 4.3.2010
Где: Украина
Репутация: нет
Всего: нет
- Что же такое .NET? Краткое описание,изучаем.
- Какой язык программирования выбрать? выбираем.
- C#. С чего начать? начинаем.
- Защита исходного кода .NET приложений, защищаем.
- Литература по .NET, обращаемся.
- FAQ раздела,ищем здесь.
- Архиполезные ссылки:www.connectionstrings.com, www.pinvoke.net, www.codeproject.com
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
[ Время генерации скрипта: 0.1494 ] [ Использовано запросов: 21 ] [ GZIP включён ]
Как убрать фон у label c
![]()
Лучший отвечающий
Вопрос
- Перемещено I.Vorontsov 15 февраля 2010 г. 9:34 (От:Visual C#)
- Перемещено Tagore Bandlamudi 2 октября 2010 г. 22:40 MSDN Forums consolidation (От:Разработка Windows-приложений)
Ответы
- Помечено в качестве ответа Серый Науменко 12 февраля 2010 г. 13:51
- Помечено в качестве ответа Серый Науменко 12 февраля 2010 г. 13:51
на форме label1
- Помечено в качестве ответа Серый Науменко 12 февраля 2010 г. 14:37
но лейбл за кнопкой не виден

- Помечено в качестве ответа Серый Науменко 12 февраля 2010 г. 15:50
Все ответы
- Помечено в качестве ответа Серый Науменко 12 февраля 2010 г. 13:51
фон для формы установили?

другие контролы не будут видны сквозь лейбл

другие контролы не будут видны сквозь лейбл

- Помечено в качестве ответа Серый Науменко 12 февраля 2010 г. 13:51
на форме label1
- Помечено в качестве ответа Серый Науменко 12 февраля 2010 г. 14:37
Всё норм код работает, там просто баг был какойта. После перезапука винды всё норм:)
но лейбл за кнопкой не виден

- Помечено в качестве ответа Серый Науменко 12 февраля 2010 г. 15:50
Центры разработки
- Windows
- Office
- Visual Studio
- Microsoft Azure
- Дополнительно.
Обучение
- Microsoft Virtual Academy
- Канал Channel 9
- Журнал MSDN
Сообщество
- Новости
- Форумы
- Блоги
- Codeplex
Свяжитесь с нами
Программы
- BizSpark (для стартапов)
- Microsoft Imagine (for students)
- Информационный бюллетень
- Конфиденциальность и файлы cookie
- Условия использования
- Товарные знаки
© 2022 Microsoft