Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/41: Рейтинг темы: голосов - 41, средняя оценка - 4.68
106 / 0 / 0
Регистрация: 05.03.2014
Сообщений: 101
Записей в блоге: 1

Запуск программы и таймера

06.02.2015, 15:20. Показов 8407. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят у меня есть программа и там есть Form1 и запуск программы идёт с неё и на форме есть таймер ну и собственно я его использую но я хочу сделать так сказать 2 режим запуска программы (чтобы окна не было а таймер запускался) но в Main я не могу этого сделать

Как можно это сделать если таймер находиться в Form1 а его надо запустить в Main ?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.02.2015, 15:20
Ответы с готовыми решениями:

Запуск таймера через новый поток
вечер добрый помогите мне понять есть форма на ней таймер мне нужно именно с данного таймера не создавая новый запустить его , именно...

При нажатии на кнопку запуск таймера длительностью 11 минут
Помогите написать код чтобы при нажатии на кнопку запускался таймер длительностью 11 минут! И если можно чтобы форма меняла цвет по...

Отследить запуск сторонней программы без таймера
Здравствуйте. Задача такая, отслеживать запущенные программы, и , если программа соответствует заданному имени, тогда её закрыть. ...

13
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
06.02.2015, 16:22
Цитата Сообщение от TwerTrue Посмотреть сообщение
в Main я не могу этого сделать
В приложении Windows Forms в большинстве случаев метод Main() стоит оставить как есть, всё работа - в классе формы.
Цитата Сообщение от TwerTrue Посмотреть сообщение
чтобы окна не было а таймер запускался
Скройте окно в обработчике события формы Load и там же запускайте таймер.
1
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
06.02.2015, 17:55
C#
1
2
3
4
5
6
private void Form1_Load(object sender, EventArgs e)
        {
            
            timer1.Enabled = true;
 
        }
0
106 / 0 / 0
Регистрация: 05.03.2014
Сообщений: 101
Записей в блоге: 1
06.02.2015, 18:24  [ТС]
Я вас понял но как сделать чтобы это зависело от Main где обрабатывается txt и если там значение 1 то тогда только будет запускаться один таймер без запуска формы ?

Добавлено через 1 минуту
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
if (File.Exists("settings.txt"))
                            {    
                                //Пусто 
                            }
                            else
                            {
                                File.WriteAllText("settings.txt", "hiding-0");
                                MessageBox.Show("Файл с настройками успешно создан!", "Информация", MessageBoxButtons.OK, MessageBoxIcon.Information);                          
                            }
 
                            using (StreamReader fileSetting = new StreamReader("settings.txt"))
                            {
                                string bufferStr;
                                while (!fileSetting.EndOfStream)
                                {
                                    bufferStr = fileSetting.ReadLine();
 
                                    if (bufferStr == "hiding-0")
                                    {
                                        MessageBox.Show("hiding-0", "Информация", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                        Application.Run(new Form1());                                
                                    }
 
                                    if (bufferStr == "hiding-1")
                                    {
                                        MessageBox.Show("hiding-1", "Информация", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    }
Вот мой код с обработкой в Main
Я понял что можно сделать через проверку но будет ошибка что элемент не существует в данном контексте
Или вынести обработку в Form1 (txt) ?
0
 Аватар для Евгений В
912 / 672 / 134
Регистрация: 01.03.2010
Сообщений: 1,279
06.02.2015, 18:56
TwerTrue,
Не очень понял, как вы хотите запустить таймер с формы, когда еще не произошло Application.Run(new Form1) ?

Может типа такого нужно?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
static class Program
    {
        /// <summary>
        /// Главная точка входа для приложения.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Form1 form1 = new Form1();
 
            Timer timer = new Timer();
            timer.Interval = 10000;
            timer.Tick += new EventHandler(timer_Tick);
 
            string str = "1";
 
            if (str=="1")
               timer.Start();
 
            Application.Run(form1);
        }
 
        static void timer_Tick(object sender, EventArgs e)
        {
            (sender as Timer).Stop();
        }
    }
Добавлено через 2 минуты
Может лучше так сделать Режим приватности (смотри ближе к концу странички.)
Только, во второй форме вместо проверки пароля делать все ваши операции/
0
106 / 0 / 0
Регистрация: 05.03.2014
Сообщений: 101
Записей в блоге: 1
06.02.2015, 19:10  [ТС]
Но а если я этот таймер буду использовать и в Form1 то надо будет его так сказать копировать (я хочу обойтись без этого)
0
106 / 0 / 0
Регистрация: 05.03.2014
Сообщений: 101
Записей в блоге: 1
06.02.2015, 20:10  [ТС]
Ребят у меня есть программа но я хочу запустить в ней только таймер без графической её части
Как мне его инициализировать без графической части чтобы потом его использовать ?

C#
1
2
3
4
5
6
7
8
9
10
11
12
private void InitializeComponents()
        {
            this.components = new System.ComponentModel.Container();
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
            this.timer1 = new System.Windows.Forms.Timer(this.components);
            this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
            this.SuspendLayout();
            // 
            // timer1
            // 
            this.timer1.Interval = 500;
            this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
Я использую этот код но всё равно появляется пустое окно

 Комментарий модератора 
Темы объединены.
TwerTrue, не плодите темы, по тому же вопросу продолжайте тут.
0
 Аватар для Монфрид
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,247
06.02.2015, 20:28
Цитата Сообщение от TwerTrue Посмотреть сообщение
Я использую этот код но всё равно появляется пустое окно
ну вы же используете винформс проект. Без форм там никуда. Можно скрыть форму сразу.
Можно создать виндоус-службу с вашим таймером (но это сложнее).
0
106 / 0 / 0
Регистрация: 05.03.2014
Сообщений: 101
Записей в блоге: 1
06.02.2015, 20:52  [ТС]
Можете дать код на закрытие формы ? Главное чтобы она не мигала
0
 Аватар для Монфрид
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,247
06.02.2015, 21:16
Цитата Сообщение от TwerTrue Посмотреть сообщение
Главное чтобы она не мигала
C#
1
this.Hide();
но мигать она будет (один раз)
0
106 / 0 / 0
Регистрация: 05.03.2014
Сообщений: 101
Записей в блоге: 1
06.02.2015, 21:17  [ТС]
Не чего не происходит форма открывается
Код я вставляю после
C#
1
InitializeComponents();
0
 Аватар для SharpDeveloper
141 / 138 / 22
Регистрация: 16.02.2012
Сообщений: 453
06.02.2015, 21:44
Цитата Сообщение от Монфрид Посмотреть сообщение
ну вы же используете винформс проект. Без форм там никуда.
Да бросьте. Удалите все формы, в методе Main создавайте таймер и запустите цикл, чтобы программа не вышла из метода, а завершала работу по вашему условию. Также можно NotifyIcon использовать без форм, только иконка в трее.
0
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
07.02.2015, 00:36
Короче сформулируйте конкретнее задачу! Если помощи хотите!

Выводы из Вашей мутной задачи:
1) не трогайте main
2) может вас устроит просто скрыть форму? Form.Visible = false; а когда нужно отобразить её Form.Visible = true;
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
07.02.2015, 03:32
TwerTrue, замени строчку
C#
1
public Form1 : ApplicationContext
и не будет графической части.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.02.2015, 03:32
Помогаю со студенческими работами здесь

Запуск программы без создания окна. Запуск фоновой программы
Вопрос, как сделать, чтобы консольное приложение при запуске не создавало окошко консоли. Т.е. запустился процесс, но визуально ничего не...

Запуск таймера
вроде бы написал все правильно, но на форме таймер не запускаетсяprocedure TForm1.Button2Click(Sender: TObject); begin ...

Запуск и остановка Таймера
Уважаемые форумчане, добрый день! В просторах интернета по вопросу работы ТАЙМЕРА на VBA, я нашел много разных примеров, однако из-за...

Запуск таймера Unity C#
Нужна помощь с реализацией Суть: есть таймер, который запускает панель _buttonController.OnCameAnimal(); каждые 20 секунд если ничего не...

Запуск таймера на второй форме
Подскажите, пожалуйста слюдующее: Как сделать переход со второй формы на третью. Выставляю таймер, ставлю form2.hide; form3.show...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru