Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/35: Рейтинг темы: голосов - 35, средняя оценка - 4.69
23 / 23 / 6
Регистрация: 16.10.2010
Сообщений: 211

Динамическое создание TTimer

09.08.2011, 12:42. Показов 6714. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот понадобился компонент таймер вне формы создающейся динамически.
C++
1
TTimer *MyTimer = new TTimer(NULL);
Но как будет выглядеть функция для обработки происходящего в таймере, тоесть OnTimer.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.08.2011, 12:42
Ответы с готовыми решениями:

динамическое создание
напишите приложение в котором, при щелчке по форме мышью, появляется панель с заголовком, отражающим координаты щелчка (напимер. левый...

Динамическое создание массива
Мужики! Помогите создать программу, желательно в visual studio на с++, но можно и билдер, консольное приложение Задание на изображении...

Динамическое создание textBox
Столкнулся с такой проблемкой как создание нескольких объектов для работы с ними. Создаю textBox вот так : private void...

7
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
09.08.2011, 12:45
совет на все случаи жизни: поставьте на форму "живой" Timer , создайте нужный обработчик в Инспекторе объектов и посмотрите .
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
09.08.2011, 12:46
Leemurchonok, описываете в классе, где нужен таймер событие OnTimeOut() и вешаете на указатель на функцию внутри таймера:
C++
1
MyTimer->OnTimer = OnTimeOut;
точно уже и не помню названия этого метода, посмотрите в хелпе, но принцип такой, как я указал выше... и это можно делать для любых событий в любых классах...
0
23 / 23 / 6
Регистрация: 16.10.2010
Сообщений: 211
09.08.2011, 12:49  [ТС]
Я так и делал. Но ведь он не принадлежит форме( и ругается сразу на функцию, а именно на TObject *Sender

Добавлено через 1 минуту
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
1
MyTimer->OnTimer = OnTimeOut;
Вот тут компилятор и ругается
0
return (true);
 Аватар для mimicria
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
09.08.2011, 12:50
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
class AAA : public TObject{ // Класс наследник от TObject
    private:
    public:
    void __fastcall Timer1Timer(TObject *Sender);
    void MakeTimer();
    TTimer * Timer1; // Глобальный таймер
};
//-----------------------------------------------------------------------
void __fastcall AAA::Timer1Timer(TObject *Sender)
{
    ShowMessage("ok");
}
//-----------------------------------------------------------------------
void AAA::MakeTimer(){
    Timer1 = new TTimer(NULL);
    Timer1->OnTimer = AAA::Timer1Timer;
    Timer1->Interval = 1000;
    Timer1->Enabled = FALSE;
}
//-----------------------------------------------------------------------
 
 
Запуск таймера:
    AAA * ttt = new AAA;
    ttt->MakeTimer();  // создаем таймер
    ttt->Timer1->Enabled = TRUE; // Запускаем
1
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
09.08.2011, 13:42
Leemurchonok, ну так главным условиям прикрепления процедуры обработки к обработчику в объекте полная идентичность параметров и возвращаемых значений...
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
09.08.2011, 18:21
h-файл
C++
1
2
3
4
5
6
7
8
9
10
11
12
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:    // IDE-managed Components
    void __fastcall FormDestroy(TObject *Sender);
    void __fastcall FormCreate(TObject *Sender);
private:    // User declarations
public:     // User declarations
   void __fastcall TimerMyTimer(TObject *Sender); //   <-- !!!
 
    __fastcall TForm1(TComponent* Owner);
};
cpp-файл
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
TForm1 *Form1;
TTimer *myTimer;
void __fastcall TForm1::TimerMyTimer(TObject *Sender)
{
Beep(1000,200); // Действие
}
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
myTimer= new TTimer(this);
myTimer->OnTimer = & TimerMyTimer;  
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
delete myTimer;
}
0
0 / 0 / 0
Регистрация: 03.11.2009
Сообщений: 101
25.10.2011, 01:11
а пройдет такой вариант с динамическим таймером в DLL без формы?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.10.2011, 01:11
Помогаю со студенческими работами здесь

Динамическое создание таблицы
Всем доброго времени суток, задание таково- Написать скрипт, который формирует таблицу пифагора в указанном пользователем диапазоне. т.е....

Динамическое создание потоков
Задача поиска максимума в большом массиве данных. Для поиска использовать механизм сдваивания блоков. Саму задачу я сделал , но препод...

Динамическое создание объектов
Доброго времени суток, мне нужно создавать каждые 2 секунды какой-то объект, который определит рандом, эта функция вызывается в корутине, ...

Динамическое создание таблицы
Может кто подскажет как организовать подобное? Запрос в mysql возвращает такую таблицу: obj_id | name | value 1 | Состояние |...

Динамическое создание экземпляра
Здравствуйте,форумчане) Есть один класс(назовём его с1),у него есть циклический метод (m.c1).В нём вызывается метод ещё одного...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
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
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru