Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 3
Регистрация: 12.01.2017
Сообщений: 6

Задержка между сменой pictureBox

16.04.2018, 22:03. Показов 1582. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, господа форумчане.

Делаю проект часы с кукушкой для курсовой. Необходимо добавить задержку между вылетами кукушки (один pictureBox меняется на другой и между сменой задержку 1 секунду). Пробовал делать Thread.Sleep(1000), стопится вся программа и часы тоже. Прочитал что для задержки нужно делать отдельный поток, но в нём не получается сменить pictureBox, пишет ошибку (Недопустимая операция в нескольких потоках: попытка доступа к элементу управления "MainWindow" не из того потока, в котором он был создан.)

Пока что остановился на этом

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if (now.Second == 0) // для проверки работоспособности смена картинок происходит каждую минуту
            {
                Thread myThread = new Thread(new ThreadStart(Kukushka));
                myThread.Start(); // запускаем поток
            }
 
void Kukushka()
        {
            pictureBox1.Visible = false;
            pictureBox2.Visible = true;
            Thread.Sleep(1000);
            pictureBox2.Visible = false;
            pictureBox1.Visible = true;
        }
Если создавать новый pictureBox в этом потоке, то выводит такую же ошибку при добавлении pictureBox на форму.

Какие ещё есть способы сделать задержку или как заставить работать этот?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.04.2018, 22:03
Ответы с готовыми решениями:

Задержка при перемещении PictureBox-са
Всем привет! у меня на форме есть панель(panelcenter) на ней находится Picturebox1, в нем нарисован квадрат. Я мышкой двигаю пикчербокс...

Задержка после вывода картинки в pictureBox
Я нажимаю на один picturebox, в него загружается картинка, потом на другой и в зависимости от того одинаковые ли там картинки или нет они...

Задержка между действиями
А если мне нужно при нажатии сделать паузу между действиями, а Thread.Sleep(1000) тормозит полностью все действия? button1.Enabled =...

1
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
16.04.2018, 23:37
Воспользуйтесь таймером:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Timer tmr;
 
private void Form1_Load(object sender, EventArgs e)
{
    tmr = new Timer();
    tmr.Interval = 1000;
    tmr.Tick += Tmr_Tick;
}
 
private void Tmr_Tick(object sender, EventArgs e)
{
    pictureBox1.Visible ^= true;
    pictureBox2.Visible ^= true;
}
 
private void button1_Click(object sender, EventArgs e)
{
    tmr.Start();
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.04.2018, 23:37
Помогаю со студенческими работами здесь

Задержка между вызовами методами
Всем привет.Подскажите пожалуйста. В одном месте кода вызываю метод А. Сейчас мне надо после метода A добавить вызов метода B через 3...

Конфликт между PictureBox.Load и PictureBox.Image.Save
Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click Дан код. ...

Задержка между функиями
Есть 3 функции function b1(){ document.getElementById("baners").innerHTML = "..."; ...

Задержка между командами
Добрый день! я хочу спросить, почему при выполнении кода int y=0; while(1) { while(y++<1000000);y=0; printf("z "); } ...

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


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Установка 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, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru