Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > Активная форма


Автор: Dazzle 29.4.2010, 11:41
День добрый.
Мне нужно чтобы мое приложение определяло активно оно в данный момент или нет.
Допустим открыта моя прога и блокнот. Если выбрана моя прога то заголовок у нее меняестся на "Активна", а если блокнот то на "Не активна".
Спс.

Автор: KelTron 29.4.2010, 12:01
Например, так:
Код

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        this.Activated += new EventHandler(Form1_Activated);
        this.Deactivate += new EventHandler(Form1_Deactivate);
    }

    void Form1_Deactivate(object sender, EventArgs e)
    {
        this.Text = "Неактивна";
    }

    void Form1_Activated(object sender, EventArgs e)
    {
        this.Text = "Активна";
    }
}



Автор: Dazzle 29.4.2010, 16:44
Спасибо, с активацией все работает.
Появился еще вопрос:
Если прога не активна, можно ли определить на ней мышь или нет?

Автор: Heinzz 29.4.2010, 17:03
работает даже если окно не активно
Код

private void Form1_MouseMove(object sender, MouseEventArgs e)
        {
            this.Text = e.X.ToString();
        }

Автор: Dazzle 29.4.2010, 17:42
По идее должно работать, в vb точно такой метод работает, но тут что-то не хочет даже когда форма активна. (


Пробовал вставить в private void InitializeComponent()
Код

this.MouseMove += new System.EventHandler(this.Form1_MouseMove);


но C# заругался    "Нет перегруженного метода для "Form1_MouseMove", который соответствует делегату "System.EventHandler"    D:\Dazzle\Visual Studio 2008\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Form1.Designer.cs"

Автор: Heinzz 29.4.2010, 18:03
не тот делегат использовали
Код

 public Form1()
        {
            InitializeComponent();
            this.MouseMove += new MouseEventHandler(Form1_MouseMove);
        }

        void Form1_MouseMove(object sender, MouseEventArgs e)
        {
            //la-la-la
        }


Автор: Dazzle 29.4.2010, 18:50
Все работает. Спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)