Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
baida
0 / 0 / 0
Регистрация: 14.12.2008
Сообщений: 3
#1

Borland CBuider. Есть форма, на ней две кнопки... - C++

15.12.2008, 02:37. Просмотров 705. Ответов 4
Метки нет (Все метки)

Borland CBuider.
Есть форма, на ней две кнопки.Оработчики например такие:
...
int i=1;
...Button1Clik(..)
{
while(i){....};
}
....Button2Clik(..)
{i=0;
}
Если нажимаю Button1 форма становиться недоступной и значение i изменить невозможно. Подскажите как быть.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2008, 02:37     Borland CBuider. Есть форма, на ней две кнопки...
Посмотрите здесь:

Определить длину строки. Проверить, есть ли в ней слово “one”. C++
C++ Есть файл написанный в borland 3.1. Мне его нужно открыть и откомпилировать.
у кого есть Borland c++ C++
C++ Есть bmp-картинка. Нужно узнать, что за буква на ней нарисована
Доделайте программу Исходник есть. Borland c++ (DOS) C++
C++ BOrland c for dos Исправить ошибку! код есть!
Нажатие кнопки при задержке на ней курсора C++
C++ есть программа , но нужно что то в ней заменить
C++ Ввести символьную строку проверить есть ли в ней цифры
C++ Есть ли разница между Visual C++, Borland C++ и C++ Builder?
Дана строка. Определить, сколько в ней символов *, ;, : [Есть код на Pascal] C++
C++ Как нарисовать гладкую кривую, если есть массив точек, лежащих на ней?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GigaBit
0 / 0 / 0
Регистрация: 03.11.2008
Сообщений: 10
15.12.2008, 03:35     Borland CBuider. Есть форма, на ней две кнопки... #2
Привет!!!
Вот пример использования while!?
int i = 0
while (i < x)
{ ................
................
i++
}
Сравни со своим.
GigaBit.
baida
0 / 0 / 0
Регистрация: 14.12.2008
Сообщений: 3
15.12.2008, 10:38  [ТС]     Borland CBuider. Есть форма, на ней две кнопки... #3
Спасибо за ответ.
Так,конечно, правильно, но в том-то и дело, что нужно выполнять какие-то действия не заданное х раз, а до тех пор, пока не будет нажата вторая кнопка...
Например 1-ой кнопкой запускаем поиск файла по всем дискам,второй - останавливаем. Может тут совсем другой подход нужен?
VitFil
0 / 0 / 0
Регистрация: 10.07.2007
Сообщений: 105
15.12.2008, 11:12     Borland CBuider. Есть форма, на ней две кнопки... #4
По нажатию на первый батон создаем отдельный поток в котором ищем файлы и периодически проверяем состояние флага. Истина - продолжаем искать, ложь - сворачиваем поток.
По нажатию второго батона меняем состояние флага в ложь.

Мультизадачность Форточек не надо понимать буквально.
galin
Сообщений: n/a
15.12.2008, 15:46     Borland CBuider. Есть форма, на ней две кнопки... #5
Полностью присоединяюсь к предыдущему ответу!

Дело в том, что после нажатия на кнопку 1
программа начинает крутить бесконечный цикл и не может
воспринять никаких команд.

Она сможет воспринять команды только после окончания работы
цикла, но конца нет!

Чтобы бороться с этим, как правильно сказал предыдущий товарищ,
нужно операцию по кнопке1 вести в отдельном (не VCL)
потоке и периодически проверять, не пора ли заканчивать,
используя, например, Synchronize метод (примерно так).

В бильдере есть примере и подробные руководства в хелпе, как это делается Сложного ничего нет. Если что неясно-шлите вопросы,
поможем. Можно даже выслать код.

Успешного программирования. Галин А.М.
Yandex
Объявления
15.12.2008, 15:46     Borland CBuider. Есть форма, на ней две кнопки...
Ответ Создать тему
Опции темы

Текущее время: 05:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru