Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.04.2010, 16:12   #1
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
Вопрос Прозрачность динамически созданной формы

Всем доброго времени суток!

C#, необходимо создать динамически форму и сделать её прозрачной на n-ное кол-во процентов

Код:
public void SelectArea()
        {
            Form nf = new Form();
            nf.FormBorderStyle = FormBorderStyle.None;
            nf.MinimizeBox = false;
            nf.MaximizeBox = false;
            nf.ControlBox = false;
            nf.BackColor = Color.Black;
            nf.AllowTransparency = true;
            nf.Opacity = 50;
            //nf.TransparencyKey = Color.Black;
            nf.WindowState = FormWindowState.Maximized;
            //nf.StartPosition = FormStartPosition.CenterScreen;
            
            nf.Left = 0;
            nf.Top = 0;
            nf.MouseClick += new MouseEventHandler(nf_MouseClick);
            nf.Load += new EventHandler(nf_Load);
            nf.Show();
            //nf.Update();
            //nf.Refresh();
        }

        void nf_Load(object sender, EventArgs e)
        {
            (sender as Form).Opacity = 50;
            //(sender as Form).Invalidate();
        }

        void nf_MouseClick(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                (sender as Form).Close();
            }
            if (e.Button == MouseButtons.Right)
            {
                (sender as Form).Opacity = 50;
                //(sender as Form).Update();
                (sender as Form).Invalidate();
            }
        }
Собственно пробовал всякими рефреш апдейтами но результата не вижу.


В чем моя ошибка?

P.S: Смысл такой - поверх всех окон открывается новая полупрозрачная форма на которой я выбираю область на экране для дальнейших действий с ней.

Последний раз редактировалось Lime; 03.04.2010 в 16:15.
Lime вне форума Ответить с цитированием
Старый 03.04.2010, 16:25   #2
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
По умолчанию

Разобрался сам , ошибка была в Opacity , требуется значение от 0 до 1.0
Lime вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Привязать процедуру к динамически созданной картинке Marsel737 Общие вопросы Delphi 7 27.07.2012 19:19
Прозрачность формы Asiman Общие вопросы Delphi 1 24.01.2010 19:41
Прозрачность формы и эллементов Diakon Общие вопросы Delphi 1 02.12.2009 16:58
прозрачность формы. blackstersl Общие вопросы Delphi 8 04.06.2009 13:22
Событие для динамически созданной Button Dogmat Помощь студентам 8 24.07.2008 12:44