![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
with
100% © (2006-11-05 20:45:00)Смотрел справку и не понял. Возможноли использовать with в такой ситуации:
with Edit1, Edit2, Edit3, Memo1, Label1 do
Enabled := False;
У меня не получается, реагирует только последний контролл (Label1).
?
Германн (2006-11-07 00:27:00) [1]
> Думаешь в этот раз скажу иначе?
Такая крамольная мысль мне в голову прийти в принципе даже не могла. :-)
Anatoly Podgoretsky (2006-11-06 23:04:00) [2]> Германн (06.11.2006 1:57:31) [31]
> сейчас Ваш ответ на мой "плач" тут на форуме по поводу "некоей
> ограниченности" функционала оператора case. :-)
Думаешь в этот раз скажу иначе?
Desdechado (2006-11-06 11:09:00) [3]> Смотрел справку и не понял.
with всего лишь указывает на то, что далее не нужно писать полное имя свойства объекта, а можно сокращенное.
Но это не избавляет от обращения к свойству как к таковому. И групповые операции не заменяет.
Кстати, такой множественный with чреват ошибками, ибо если свойство есть в нескольких из перечисленных объектах, то использовано будет только одно, какое именно - зависит от порядка перечисления в with.
Германн (2006-11-06 01:57:00) [4]
> Anatoly Podgoretsky © (06.11.06 00:34) [27]
>
> > KilkennyCat (06.11.2006 0:15:22) [22]
> > Вот это меня уже давно поражает, почему в Делфи не упростят
> такие штуки... очень уж я ленивый
>
> Я бы тоже не отказался, поскольку постоянно используются
> подобное в коде, но тут Вирт виноват, кроме того раздражает
> не последовательность во многом, например
>
...
> Мне очень не удобно писать многострочные конструкции
> if
> then
> else
>
...
> Ну нет в жизни счастья.
>
Выделено мной.
Если б я не был пофигистом, а был бы злопамятен, я бы сохранил в своё время и воспроизвёл бы здесь и сейчас Ваш ответ на мой "плач" тут на форуме по поводу "некоей ограниченности" функционала оператораcase. :-)
Ketmar (2006-11-06 00:48:00) [5]>[27] Anatoly Podgoretsky(c) 6-Nov-2006, 00:34
>while Exp do я могу написать только один оператор, а
>repeat statements until Expr много, хотя это одна и таже
>конструкция
ага. в Обероне починили. %-)
>Не нравится равенство всех операторов end
это уже дело вкуса, имо. меня наоборот -- раздражают вещи типа "end if".
>иногда трудно разобраться где не там поставлен end
colorer нас спасёт. %-)
>теперь у него стало регистро чуствительно.
что мне очень нравится, кстати. не надо читать конструкции типа "wHiLe". опять же -- в Обероне, например, я отлично обходился без подсветки синтаксиса. а в Delphi -- опаньки... плюс -- приятные соглашения об именах: переменные -- с маленькой буквы, процедуры -- с большой в "геттерах" слово "Get" опускается, etc, etc...
KilkennyCat (2006-11-06 00:38:00) [6]> А там кричал прямо, слюна брызжила
Какой интерактивный форум. Передает громкость и слюни.
Vovan#2 (2006-11-06 00:35:00) [7]> Написаное мною соответствует, написаное тобой нет.
Вот сейчас уже отвечал спокойно. А там кричал прямо, слюна брызжила. Из-за какого-то with'а умудрённый опытом пожилой человек так напрягся, что выжал 100 кг лёжа. Э-э, не надо так.
Anatoly Podgoretsky (2006-11-06 00:34:00) [8]> KilkennyCat (06.11.2006 0:15:22) [22]
> Вот это меня уже давно поражает, почему в Делфи не упростят такие штуки... очень уж я ленивый
Я бы тоже не отказался, поскольку постоянно используются подобное в коде, но тут Вирт виноват, кроме того раздражает не последовательность во многом, например
while Exp do я могу написать только один оператор, а repeat statements until Expr много, хотя это одна и таже конструкция, цикл while с пост и пред условием. И почему то решил, что программа на Паскале - это одна строка, в конце строки ставится точка.
Мне очень не удобно писать многострочные конструкции
if
then
else
Не нравится равенство всех операторов end, а ведь претендовал на очень строгий язык, который не позволит делать грубые ошибки, равноправный end еще как позволяет и иногда трудно разобраться где не там поставлен end
Позже он понял, что так неправильно и в новых языках сделал как положено, но зато увлекся религией Юникса, теперь у него стало регистро чуствительно.
Ну нет в жизни счастья.
Anatoly Podgoretsky (2006-11-06 00:25:00) [9]> Vovan#2 (06.11.2006 0:00:19) [19]
Написаное мною соответствует, написаное тобой нет.
koha (2006-11-06 00:22:00) [10]> KilkennyCat © (06.11.06 00:15) [22]
> Да я не спорю про необходимость...
Сорри... просто я немного нерасчитал сил. Хотел как лучше, а получилось - завел закорягу.
Ketmar (2006-11-06 00:18:00) [11]>[22] KilkennyCat(c) 6-Nov-2006, 00:15
>Вот это меня уже давно поражает, почему в Делфи не
>упростят такие штуки... очень уж я ленивый :)))
достаточно было бы сделать ":=" функцией. %-)
koha (2006-11-06 00:17:00) [12]> Percent (05.11.06 23:48) [16]
> (form1.Controls[i] as TControl)..Enabled:=false;
- сдесь ляпус я имел это: (form1.Components[i] as TControl).Enabled:=false
KilkennyCat (2006-11-06 00:15:00) [13]> koha © (06.11.06 00:01)
Да я не спорю про необходимость...
If a = b then c := true намного логичнее выглядит как c := a = b;
Это так, к примеру.
Читать легче, ибо в первом варианте я предполагаю свершения определенного действия, а во втором я сразу вижу смену логического состояния.
Кроме того, существуют еще and, or, not...
> [21] Anatoly Podgoretsky © (06.11.06 00:06)
Вот это меня уже давно поражает, почему в Делфи не упростят такие штуки... очень уж я ленивый :)))
Anatoly Podgoretsky (2006-11-06 00:06:00) [14]> Суслик (05.11.2006 23:40:13) [13]
И правильно бы поступил, тем более что в коде они явно перечислены, но к сожалению язык то не PLM, каждое действие надо делать отдельно, в PLM бы я написал так
Button1.Enabled, Button2.Enabled, Button2.Enabled := True
koha (2006-11-06 00:01:00) [15]> Я не против проверок. Я против таких проверок.
в данном случае такая проверка была необходима, но кто-то был прав: "для конкретного случия конкретный код"
Vovan#2 (2006-11-06 00:00:00) [16]>Anatoly Podgoretsky © (05.11.06 20:51) [1]
Возможно, но голову такую дурную надо, какие в природе не встречаются.
А диагноз простой, у тебя дырка в голове. Все работает в соответствии с
написаным и в соответствии с документацией.
Озверел на старости лет?
Leonid Troyanovsky (2006-11-05 23:58:00) [17]
> Суслик © (05.11.06 23:40) [13]
> придумать какое-то обобщение - каким-то образом задавать
> все контролы, у которых
Все уже украдено до нас: TActionList & etc
Раньше же, для согласованного изменения состояния
групп контролов, у формы или панели делалось свойство,
сеттер которого и выполнял требуемое.
--
Regards, LVT.
KilkennyCat (2006-11-05 23:52:00) [18]> [15] koha © (05.11.06 23:47)
> Потому как не каждый компонент есть контрол - проверять
> надо...
Я не против проверок. Я против таких проверок.
Percent (2006-11-05 23:48:00) [19][12] koha © (05.11.06 23:36)
> Percent (05.11.06 23:28) [11]
> Душевно...
Можно было и явно:
(form1.Controls[i] as TControl)..Enabled:=false;
И сверавно работало бы
Можно было бы вообще никак, и тоже работало бы:
Form1.Controls[i].Enabled := false;
koha (2006-11-05 23:47:00) [20]Потому как не каждый компонент есть контрол - проверять надо...
например, ImageList - не котрол, а на форме лежит.