Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];
ВнизКак удалить предок компонента из его же события Найти похожие ветки
← →
Sco © (2006-10-18 16:10) [0]Мне надо так но выдаётся ошибка, шо делать?
procedure TAlarmClockF.AlarmDelIconClick(Sender: TObject);
begin
// smth code
AlarmDelIcon.parent.destroy
// smth code
end;
Всё идёт гладно до end; потом ошибка памяти, шо можно сдесь сделать?
← →
Плохиш © (2006-10-18 16:14) [1]
> AlarmDelIcon.parent.destroy
Отпилить сук на котором сидишь и удивляться, что сильно ударился при падении. Рыдал....
Попробуй применитьRelease
, как в справке и написано.
← →
Sco © (2006-10-18 16:23) [2]теорию глюка я понял, а вот как испольщовать release я незнаю...
← →
Плохиш © (2006-10-18 16:28) [3]
> Sco © (18.10.06 16:23) [2]
> теорию глюка я понял, а вот как испольщовать release я незнаю
Ну.. можно слово "destroy" в своём коде заменить на слово "release". А можно и в справке что-нибуть почитать.
← →
Sco © (2006-10-18 16:35) [4]2[b]Плохиш[/b] я уюзаю TPanel, а у неё нету release
← →
Сергей М. © (2006-10-18 16:36) [5]
> шо делать?
С какого перепугу чадо может потребовать у родителя убиения самого себя, при этом контролируя процесс своего убиения ?)
← →
Плохиш © (2006-10-18 16:37) [6]
> Sco © (18.10.06 16:35) [4]
> 2[b]Плохиш[/b] я уюзаю TPanel, а у неё нету release
Ну и негиК удалять то, что не создавал.
← →
Sco © (2006-10-18 16:44) [7]не понял... чо за маразм. Мне надо сносить панель, на панели есть иконка - жму на неё - и панель должна исчезнуть с формы и из памяти. так что не "нефиг" - а как её удалить?
Я делаю обработку события OnClick, но прямо оттуда нормально снести не могу, глюки, а снести НАДО! как ето сделать? У TPanel нету release
← →
Плохиш © (2006-10-18 16:54) [8]
> Sco © (18.10.06 16:44) [7]
> не понял... чо за маразм. Мне надо сносить панель, на панели
> есть иконка - жму на неё - и панель должна исчезнуть с формы
> и из памяти.
Закажи панель форме, она уничтожит и даже денег не возьмёт.
← →
Германн © (2006-10-18 16:56) [9]PostMessage поможет ОРД
← →
Sco © (2006-10-18 17:00) [10]2Плохиш а ето как? даже не представляю
2Германн ваще ничо не понял, чо такое Орд, PostMessage/
можна для меня попроще... а то нифига не понимаю
← →
Amoeba © (2006-10-18 17:04) [11]
> чо такое Орд
Отец русской демократии
← →
Sco © (2006-10-18 17:06) [12]2Amoeba издеваешься? лучше бы написал код который мне надо ввести...
← →
Германн © (2006-10-18 17:09) [13]procedure TAlarmClockF.AlarmDelIconClick(Sender: TObject);
begin
// smth code
PostMessage(Handle,WM_AlarmDelIcon_parent_destroy,0,0);
// smth code
end;
procedure TAlarmClockF.WMAlarmDelIcon_parent_destroy(var Mes: TMessage);
begin
AlarmDelIcon.parent.free;
end;
← →
Игорь Шевченко © (2006-10-18 17:21) [14]
> лучше бы написал код который мне надо ввести...
Ему ничего не надо вводить. Это тебе надо ввести. Вот и мучайся.
← →
Sco © (2006-10-18 17:36) [15]2Германн не прокатило, пишет "[Ошибка] AlarmClock.pas(512): Not enough actual parameters"
2Игорь Шевченко можно смеятся?
← →
Игорь Шевченко © (2006-10-18 17:45) [16]Sco © (18.10.06 17:36) [15]
Лучше не смеяться. Лучше книжки читать. Или за метлой бежать в ближайший магазин.
← →
Sco © (2006-10-18 19:39) [17]2Игорь Шевченко какой метлой? чо проблемы с головой? книжки я итак читай, ДелфиВорлд изучаю и т.д. А как решить ету траблу не знаю.
2Германн так как ето сделать, уже чотока не пробовал - пишет разные ошибки а кампилится не хочет.
← →
Ketmar © (2006-10-18 19:54) [18]>[17] Sco(c) 18-Oct-2006, 19:39
>какой метлой?
обычной. в стране дефицит хороших дворников.
← →
Sco © (2006-10-18 20:18) [19]Флудеры... чо незя ответиь нормально??? ну незнаю я етого, разобраться не смог... уровень не тот, мона же обьяснить, а вы флудите...
← →
Sco © (2006-10-18 20:45) [20]Ау народ! Как ето сделать - у меня в ^ коде выводит ошибку:
AlarmClock.pas(512): Not enough actual parameters, на параметр WMAlarmDelIcon_parent_destroy, если я пишу:
procedure TAlarmClockF.AlarmDelIconClick(Sender: TObject);
var
mes: TMessage;
begin
// smth code
PostMessage(Handle,WM_AlarmDelIcon_parent_destroy(mes),0,0);
// smth code
end;
то она ругается [Ошибка] AlarmClock.pas(512): Incompatible types: "Cardinal" and "procedure, untyped pointer or untyped parameter".
В чём проблема?
← →
Virgo_Style © (2006-10-18 20:58) [21]Sco © (18.10.06 20:45) [20]
В чём проблема?
В незнании.
Посмотри, какие параметры у PostMessage и сравни с тем, что ты ей дал.
← →
Sco © (2006-10-18 21:13) [22]прочитал статью про сообщения, посмотрел функцию PostMessage...
вторым параметром надо передавать переменную Cardinal, а в примере ^ передаётся процедура... так не я же придумал етот пример. Надо както "оформить" процедуру через cardinal? если да то как? если нет то что нужно передать в качестве второго параметра?
Вы что меня игнорируете... если да, и если из за [19], то Ketmar, Игорь Шевченко, Amoeba реально ничо не сделали для етого топика, тока нафлудили, так что моё замечание вполне справедливо. А если все считают что мой вопрос слишком лёгок... то смею напомнить что раздел называется "начинающим", а всякие системные сообщения далеко не азы в Делфи...
2Игорь Шевченко в дворники я не собираюсь... если я чего то не знаю ето не значит что я ничего не умею и мне надо идти в дворники... и ваще ето борзо вместо ответа писать такое...
← →
Virgo_Style © (2006-10-18 21:21) [23]Sco © (18.10.06 21:13) [22]
то смею напомнить что раздел называется "начинающим", а всякие системные сообщения далеко не азы в Делфи...
Ну так и незачем начинаюшим туда лезть
← →
Пользователь (2006-10-18 21:24) [24]то смею напомнить что раздел называется "начинающим", а всякие системные сообщения далеко не азы в Делфи...
Если ты в "начинающим" нормально вопрос сформулировать не можешь, сделай вывод: тебе еще рано этим заниматься... а то и вовсе не судьба... смирись...
в дворники я не собираюсь...
А придется...
если я чего то не знаю ето не значит что я ничего не умею и мне надо идти в дворники...
При таком подходе к решению задач - придется... (извини, что повторяюсь)...
и ваще ето борзо вместо ответа писать такое...
Тебе уже ответили... работа на свежем воздухе метлой способствует усилению мозговой деятельности... типа, лучший отдых - смена деятельности... я не сомневаюсь, что метлой махать у тебя получится... правда, в отношении решения тобою программных задач у меня очень сильные сомнения... (ну вот, я опять повторился)...
P.S. Замечательная у тебя анкета: "Увлечения / хобби: Delphi рисую лыжи"... ну, раз удается рисовать в Delphi лыжи, то метла получится и подавно...
← →
Sco © (2006-10-18 21:49) [25]
"Если ты в "начинающим" нормально вопрос сформулировать не можешь, сделай вывод: тебе еще рано этим заниматься... а то и вовсе не судьба... смирись... А придется..."
Я щас учусь в политехе, на программиста, в потоке я лучший, 1 курс... так что не пиши придётся или нет... А чтобы ты знал - ты просто флудер, хороший ты программист или нет, но флудер ты стабильно - я ето хуже дворника причём намного.Тебе уже ответили... работа на свежем воздухе метлой способствует усилению мозговой деятельности... типа, лучший отдых - смена деятельности... я не сомневаюсь, что метлой махать у тебя получится... правда, в отношении решения тобою программных задач у меня очень сильные сомнения... (ну вот, я опять повторился)...
Я конечно нарушаю правил а форума- но у меня к тебе вопрос - ты чо ахренел? ты чо бля думаешь что все программеры с нуля сразу становятся крутыми? я тут такие топики видел, где такие елементарные вопросы обсуждались, и знаешь никто про дворников ничо не говорил.P.S. Замечательная у тебя анкета: "Увлечения / хобби: Delphi рисую лыжи"... ну, раз удается рисовать в Delphi лыжи, то метла получится и подавно...
я вижу ты на форуме не зарегистрен, ты ваще хоть какоенибудь отношение к Делфи имеешь? или ты просто нашёл в яндексе страничку, и твоя никчёмная душонка решила испананить мне настроение?
Ты претваряешься кретином или ето давно уже твой диагноз?
← →
Sco © (2006-10-18 21:52) [26]2Virgo_Style чтото я тебя недопонял, ты предлагаешь перенести тему в "основные"? я думаю ей там не место, просто я имел ввиду что ето вопрос не из лёгких, однако ине и продвинутых. Ты ответ на мой вопрос знаешь?
← →
Германн © (2006-10-18 22:34) [27]
> вторым параметром надо передавать переменную Cardinal, а
> в примере ^ передаётся процедура... так не я же придумал
> етот пример.
Но ты же мой пример "тупо" скопировал, да ещё и с ошибкой.
У меня PostMessage(Handle,WM_AlarmDelIcon_parent_destroy,0,0);
procedure TAlarmClockF.WMAlarmDelIcon_parent_destroy(var Mes: TMessage);
Наиди разницу.
← →
sniknik © (2006-10-18 22:39) [28]Германн © (18.10.06 22:34) [27]
человек не знает про события, а ты ему чтобы по куску догадался свое сделать, и вызов исправить... к тому же это лишнее, должно сработать системное
procedure TAlarmClockF.AlarmDelIconClick(Sender: TObject);
begin
PostMessage(AlarmDelIcon.Parent.Handle, WM_CLOSE, 0, 0);
end;
← →
Германн © (2006-10-18 22:42) [29]
> sniknik © (18.10.06 22:39) [28]
>
> Германн © (18.10.06 22:34) [27]
> человек не знает про события, а ты ему чтобы по куску догадался
> свое сделать, и вызов исправить...
Так вот пусть и узнаёт, а не глотает уже разжеванное. :-)
← →
Schamane (2006-10-18 22:45) [30]Если не гнаться за красотой, поставить таймер на 50 мс, и в его обработчике замочить экземпляр и выключить таймер. Согласен, кривовато.
И ещё. Я писал такое:procedure someproc(Sender: TObject);
begin
//
Sender.Free;
//
end;
И у меня всё работало. Мож я чё не понимаю?
← →
Schamane (2006-10-18 23:06) [31]Эх, надо мне названия внимательнее читать...
← →
MikePetrichenko © (2006-10-19 06:50) [32]procedure TfmMain.Button1Click(Sender: TObject);
var
Obj: TOBject;
begin
Obj := TButton(Sender).Parent;
TButton(Sender).Parent := TButton(Sender).Parent.Parent;
Obj.Free;
end;
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.042 c