Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/30: Рейтинг темы: голосов - 30, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 15.04.2009
Сообщений: 11

OnClick

30.05.2009, 13:59. Показов 5718. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
int a=0;
void __fastcall TForm1::Image1Click(TObject *Sender)
{
TImage *Image = new TImage(Form1);
Image->Parent = Form1;
Image->Picture->LoadFromFile("file");
Image->OnClick = OnClick; {Image->Picture->LoadFromFile("file2");}
Image->Top =a;a=a+105;
//Как сделать чтобы у каждой новой Image был свой клик
//и в каждом клике создать Image->Picture->LoadFromFile("file2");
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.05.2009, 13:59
Ответы с готовыми решениями:

OnClick непонятно
Привет! у меня есть класс class voin { public TImage *imag; voin(){ imag =new TImage(Form1); ...

OnClick + OnDblClick
Здравствуйте! Есть панелька, хочу сделать 2 события - OnClick и OnDblClick. желаемого результата не получаю. при двойном щелчке сначала...

OnClick на TreeView
Вот такая проблемка. Есть TreeView. По клику мышкой на листе дерева этот лист становится выделенным и происходит его нормальная...

11
Программист TH
 Аватар для DanUnited
292 / 147 / 12
Регистрация: 06.01.2009
Сообщений: 537
30.05.2009, 14:15
Ну чёт я не понял.... всё правильно, только
C++
1
2
3
void __fastcall TForm1::ImageClick(TObject* Sender){
((TImege*)Sender)->Picture->LoadFromFile("File.bmp");
}
И хоть где прописываешь: Image1->OnClick = ImageClick;
0
0 / 0 / 0
Регистрация: 15.04.2009
Сообщений: 11
31.05.2009, 12:53  [ТС]
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
int a=0,b=0;
TImage *Image[1000000];
void __fastcall TForm1::ImaClick(TObject* Sender)
{
Image[b] =new TImage(Form1);
Image[b]->Parent =Form1;
Image[b]->Left = a;a=a+105;
if(b == 0){Image[b]->OnClick = Image0Click;}
if(b == 1){Image[b]->OnClick = Image1Click;}
if(b == 2){Image[b]->OnClick = Image2Click;}
if(b == 3){Image[b]->OnClick = Image3Click;}
//...и так до бесконечности
//if(b == "Безконечности"){Image->OnClick = Image"Безконечности"Click;}
Image[b]->Picture->LoadFromFile("foto\\1.bmp");
b++;
}
 
void __fastcall TForm1::Image0Click(TObject* Sender)
{
Image[0]->Picture->LoadFromFile("foto\\2.bmp");
}
 
void __fastcall TForm1::Image1Click(TObject* Sender)
{
Image[1]->Picture->LoadFromFile("foto\\2.bmp");
}
 
void __fastcall TForm1::Image2Click(TObject* Sender)
{
Image[2]->Picture->LoadFromFile("foto\\2.bmp");
}
 
void __fastcall TForm1::Image3Click(TObject* Sender)
{
Image[3]->Picture->LoadFromFile("foto\\2.bmp");
}
//... и так до бесконечности
void __fastcall TForm1::Image1000000Click(TObject* Sender)
{
Image[1000000]->Picture->LoadFromFile("foto\\2.bmp");
}
/*
Меня интересует вопрос вотакой способ один или можно както подругому написать по проще.
То очень много текста полючается
*/
0
Фрилансер
 Аватар для Black Fregat
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
31.05.2009, 13:20
Зачем тебе каждому рисунку назначать отдельный обработчик?
Сделай один на всех:
C++
1
2
3
4
5
void __fastcall TForm1::Image1Click(TObject* Sender)
{
  TImage*img = dynamic_cast<TImage*>(Sender);
  if (img) img->Picture->LoadFromFile("foto\\2.bmp");
}
1
0 / 0 / 0
Регистрация: 15.04.2009
Сообщений: 11
02.06.2009, 15:13  [ТС]
Нужно узнать на какой фотке был клик
При клике на любую Image[b]->Click()
нужно узнать клик произашол Image[2]->Click() или Image[25]->Click()
или Image[45]->Click()
как узнать
0
UNIX-way
 Аватар для Delphin_KKC
712 / 495 / 49
Регистрация: 15.01.2009
Сообщений: 1,720
02.06.2009, 15:25
Свойство Tag выставь для каждой фотки разное и по нему определяй на какой фотке щёлкнули.
C++
1
2
3
4
5
6
void __fastcall TForm1::Image1Click(TObject* Sender)
{
  TImage*img = dynamic_cast<TImage*>(Sender);
  if (img) img->Picture->LoadFromFile("foto\\2.bmp");
 if (img->Tag==1) //тут обработка щелчка по фотке с тегом "1"
}
З.Ы. Сейчас С-Билдера на компе нет, потому по памяти пишу. Но вродь так.
0
Фрилансер
 Аватар для Black Fregat
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
05.06.2009, 10:59
Цитата Сообщение от bot666 Посмотреть сообщение
Нужно узнать на какой фотке был клик
Мой код определяет, на какой фотке был клик. Именно она попадает в img
0
UNIX-way
 Аватар для Delphin_KKC
712 / 495 / 49
Регистрация: 15.01.2009
Сообщений: 1,720
05.06.2009, 22:18
Цитата Сообщение от Black Fregat Посмотреть сообщение
Мой код определяет, на какой фотке был клик. Именно она попадает в img
Согласен. Но с оговоркой. Это работает если только надо выполнить какую-то операцию с собственно рисунком на форме (загружать один и тот же файл в разные рисунки, например). А если нужно выполнить какоето другое действие? Например загружать разные файлы для разных рисунков. То как определить номер рисунка на форме?
0
Программист TH
 Аватар для DanUnited
292 / 147 / 12
Регистрация: 06.01.2009
Сообщений: 537
06.06.2009, 09:38
C++
1
2
3
4
5
void __fastcall TForm1::Image1Click(TObject* Sender)
{
TImage *m = ((TImage*)Sender);
ShowMessage(m->Name);//вот те и имя.
}
Чё вы все тупите в этой теме...??
0
 Аватар для QenT
40 / 40 / 8
Регистрация: 29.01.2009
Сообщений: 244
06.06.2009, 13:21
Цитата Сообщение от DanUnited Посмотреть сообщение
C++
1
2
3
4
5
void __fastcall TForm1::Image1Click(TObject* Sender)
{
TImage *m = ((TImage*)Sender);
//вот те и имя.
}
Чё вы все тупите в этой теме...??
Совершенству нет предела
C++
1
ShowMessage(((TImage*)Sender)->Name);
0
Фрилансер
 Аватар для Black Fregat
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
06.06.2009, 13:51
А чего это вы замену dynamic_cast на прямое преобразование выдаете за совершенство? Типа вы сами хорошо знаете, что в Sender просто обязан лежать TImage*?

Вообще, для ваших упражнений достаточно приводить к TComponent*
0
0 / 0 / 0
Регистрация: 15.04.2009
Сообщений: 11
30.06.2009, 15:38  [ТС]
Народ ещо одна проблема при перетаскивание фотки полючается так
содал одну фотку потом ещо одну, втоорая фотка она кабы над первый фоте перемещяется, а если перетаскивать 1 фотку через в торую курсор цыпяет 2 фотку дальше перетаскивается 2 фотка а нада чтобы первоя перетаскивалося дальше.
Пробывал delete new вовремя перетаскивание происходили чудеса
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.06.2009, 15:38
Помогаю со студенческими работами здесь

OnClick в WebBrowser'е
Как можно организовать такое событие, как OnClick в WebBrowser'е? Нужно, чтобы например загрузилась страница, на ней кликнули по...

OnClick в Image???
Здравствуйте!!! :) Подскажите пожалуйста как сделать OnClick в Image по нажатию на Enter??? Я делаю так: if (Key == VK_RETURN)...

Выход из обработчика onclick
Добрый день! У меня есть примерно такой код в С++ builder: void __fastcall TForm1::Button1Click(TObject *Sender) { while(1)...

OnClick для Shape
У элемента TShape нет метода OnClick. Как можно проще всего его реализовать подскажите пожалуйста.

Функция OnClick - не работает
Пробовал - не получалось. void __fastcall TForm1::StartButtonClick(TObject *Sender) { Panel1-&gt;OnClick-&gt;Color=clGreen; }...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru