Форум программистов, компьютерный форум, киберфорум
Delphi
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
 Аватар для ISerg1986
16 / 16 / 13
Регистрация: 12.01.2014
Сообщений: 177

Отображение данных в потоке

26.11.2014, 18:10. Показов 963. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть код в потоке.
Мне нужно отображать значение переменной в текстовом поле.

Часть кода
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
procedure MyThread.UpdateMemo;
begin
form1.Memo1.Lines.Add('Переменная равна'+inttostr(newvar));
end;
 
procedure MyThread.Execute;
 
while not EOF(input_file) do
begin
//тут код в результате получаем значение переменной myvar
 
newvar:=myvar;//переменная newvar глобальная
 
//Это делать нельзя т.к. я обращаюсь к VLC компоненту в потоке
//form1.Memo1.Lines.Add('Переменная равна'+inttostr(myvar));
 
//А так можно
Synchronize(UpdateMemo);
end;
В результате если раскомментировать код "Это делать нельзя т.к. я обращаюсь к VLC компоненту в потоке"
Delphi
1
form1.Memo1.Lines.Add('Переменная равна'+inttostr(myvar));
покажет правильный результат. В поле мемо будут нужные значения.

А код из процедуры MyThread.UpdateMemo покажет неправильные значения. Возможно, продублирует часть предыдущих значений переменной myvar; Я уже использую другую переменную (делфи ругался что в цикле нужны только локальные), но это не имеет значения. Всё равно в результате MyThread.UpdateMemo выдаются неправильные значения.

Подскажите, где у меня ошибка?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.11.2014, 18:10
Ответы с готовыми решениями:

Обновление данных dataGridView в потоке ошибка BindingSource не может быть источником данных для самого себя
Изучаю потихоньку C#, требуется в отдельном потоке обновлять данные dataGridView. Если не выбирать ячейку или не прокручивать полосу...

Синхнонизация данных в потоке
Есть программа, которая опрашивает АЦП с определенной частотой, пишет эти значения в базу и рисует графики, опрос АЦП занимает ~100мс и...

Получение данных В Потоке
Задача: Подключиться к серверу и слушать, что он пришлёт до завершения работы приложения. Прослушка должна быть обязательно в отдельном...

2
 Аватар для planetoxod
251 / 162 / 24
Регистрация: 22.08.2014
Сообщений: 1,598
Записей в блоге: 1
30.11.2014, 19:06
newvar объяви в private потока, больше кода, скрины form1.Memo1 и файла input_file после работы потока?
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,612
01.12.2014, 03:23
Цитата Сообщение от ISerg1986 Посмотреть сообщение
А код из процедуры MyThread.UpdateMemo покажет неправильные значения.
Как ты это определил?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.12.2014, 03:23
Помогаю со студенческими работами здесь

Ввод данных в отдельном потоке
Здравствуйте, нужно реализовать ограничение во времени при ввода ответа на вопрос. Но даже когда поток InputThread мертв (когда игра...

Поиск значения в потоке данных
Возник следующий вопрос... Есть прибор (АлкоТестер) который непрерывным потоком (примерно в пол секунды) передаёт свой статус. Примерно...

Загрузка данных формы в потоке
Не могу разобраться с потоками. При загрузки формы загружаются данные с SQL сервера (справочники и т.п.), проблема в том что форма из-за...

Обработка данных в новом потоке
Столкнулся с такой проблемой в приложении WinForm нужно создать поток. В этом потоке будут обрабатываться данные (оч. много и очень долго)....

Отрисовка данных в отдельном потоке
Уважаемые гуру и простые хорошие ребята, подскажите как правильно реализовать отрисовку графики в отдельном потоке? С потоками только...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru