Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обновление программы 
:(
    Опции темы
Legolas
Дата 15.6.2007, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 229
Регистрация: 14.2.2007

Репутация: 2
Всего: 5



Скажите, как заставить программу повторять некоторую процедуру каждые 10 сек.  smile 
PM MAIL   Вверх
Sartorius
Дата 15.6.2007, 20:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: 1
Всего: 37



 на таймер повесь обработчик. В дизайнере форм можешь его найти.
PM MAIL ICQ   Вверх
Legolas
Дата 15.6.2007, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 229
Регистрация: 14.2.2007

Репутация: 2
Всего: 5



Код

Process[] processes = Process.GetProcessesByName("vls");
                foreach (Process p in processes)
                {
                    string str = processes[0].MainWindowTitle;
                    richTextBox1.Text = str;

                }


Такой вот код. Как повесить обработчик? Я имею ввиду как именно к этому коду прикрепить таймер.

Это сообщение отредактировал(а) Legolas - 15.6.2007, 20:30
PM MAIL   Вверх
Sartorius
Дата 15.6.2007, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: 1
Всего: 37



Код

using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;

namespace ConsoleApplication1
{
    class Program
    {
        static void Method(object state)
        {            
            Console.WriteLine("ok");
        }

        
        static void Main(string[] args)
        {
            
            
            TimerCallback tcallback = Method;
            Timer tm = new Timer(tcallback);
            tm.Change(100, 1000);
            Console.Read();
        }
    }
}

PM MAIL ICQ   Вверх
tol05
Дата 15.6.2007, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1632
Регистрация: 21.12.2006
Где: Харьков

Репутация: 63
Всего: 170



если 
Цитата(Legolas @  15.6.2007,  19:13 Найти цитируемый пост)
 именно к этому коду прикрепить таймер

то
Код

public static void Main()
    {
       System.Timers.Timer aTimer = new System.Timers.Timer();

        aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);

        aTimer.Interval = 10000;
        aTimer.Enabled = true;
 
        ...
        GC.KeepAlive(aTimer);
    }
 
    private static void OnTimedEvent(object source, ElapsedEventArgs e)
    {
        Process[] processes = Process.GetProcessesByName("vls");    
        foreach (Process p in processes)    
        {    
            string str = processes[0].MainWindowTitle;    
            richTextBox1.Text = str;    
        }
    }

ну а вообще то, чтоб работало правильно (ошибка у тебя в цикле smile ),  я написал бы так
Код

Process[] processes;

public static void Main()
    {
       System.Timers.Timer aTimer = new System.Timers.Timer();

        aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);

        aTimer.Interval = 10000;
        aTimer.Enabled = true;
 
        ...
        GC.KeepAlive(aTimer);
    }
 
    private static void OnTimedEvent(object source, ElapsedEventArgs e)
    {
        processes = Process.GetProcessesByName("vls");    
        foreach (Process p in processes)    
        {    
            richTextBox1.Text = p.MainWindowTitle;    
        }
    }

кстати, пример я нашел здесь


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
Legolas
Дата 16.6.2007, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 229
Регистрация: 14.2.2007

Репутация: 2
Всего: 5



Спасибо. Искал по форуму - не нашел ( 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1146 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.