Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

with — так делают? [D7, 2003]


1Макс ©   (2008-01-01 22:35:00) 

 with MyForm do
   try
     MyForm := TMyForm.Create(Self);
     ShowModal;
   finally
     Free;
   end;

Вообще так делают, стоит так делать? Или это дурной тон?


MetalFan   (2008-01-02 15:14:00) [1]


> with TMyForm.Create(Self) do begin

может не скомпилиться)


Anatoly Podgoretsky   (2008-01-02 04:06:00) [2]

> Германн  (02.01.2008 02:10:15)  [15]

Отстал точно, теперь формы могут привязывать к гораздо большему количеству источников, не только по центру десктопа, но и по центру монитора или главной формы, или по собственнику формы.
Я не помню когда это появилось, вроде с Д7 и вот не указание собственника формы не позволит к ней привязаться. А удалению это никак не мешает.


Германн   (2008-01-02 02:29:00) [3]


> Юрий Зотов ©   (02.01.08 02:18) [16]
>
> Поскольку построчное обсуждение, видимо, закончено, предлагается
> перейти к побуквенному.
>

Я не против. С какой буквы начнём?


Юрий Зотов   (2008-01-02 02:18:00) [4]

Поскольку построчное обсуждение, видимо, закончено, предлагается перейти к побуквенному.


Германн   (2008-01-02 02:10:00) [5]


> Anatoly Podgoretsky ©   (02.01.08 01:58) [14]

Опа. Это я уже настолько отстал от жизни?
Или последние версии Дэлфи уже стараются всё делать за меня? Типа "Двоих из ларца, одинаковых с лица"?
Я лично, привык сам указывать Что, Где, Когда.


Anatoly Podgoretsky   (2008-01-02 01:58:00) [6]

> Германн  (02.01.2008 01:53:12)  [12]

Надеюсь ты не про Д3 говоришь, а хотя бы про Д7, а там он даже очень причем.
Он же не только роль убийцы выполняет, но и другие.
Подсказка - Position= poOwnerFormCenter или другое подходящее.
Нафиг нужна форма неизвестно где.


{RASkov}   (2008-01-02 01:56:00) [7]

> [12] Германн ©   (02.01.08 01:53)

А я уж приготовил было такой пост:
-------------------------------------------------

> [11] Anatoly Podgoretsky ©   (02.01.08 01:39)
> И последний штрих
>
> with TMyForm.Create(self) do try

Ну и на последок:
with TMyForm.Create(Self) do begin
  try
      ShowModal;
  finally
      Free;
  end;
end;

------------------------------------------------
:)


Германн   (2008-01-02 01:53:00) [8]


> Anatoly Podgoretsky ©   (02.01.08 01:39) [11]
>
> > Германн  (02.01.2008 00:57:10)  [10]
>
> И последний штрих
>
> with TMyForm.Create(self) do try
>

А self-то зачем? Мы ведь тут идём по пути Тараса Бульбы. Сам породил, сам и убью!


Anatoly Podgoretsky   (2008-01-02 01:39:00) [9]

> Германн  (02.01.2008 00:57:10)  [10]

И последний штрих

with TMyForm.Create(self) do try


Германн   (2008-01-02 00:57:00) [10]

Ладно. Тогда и я добавлю свои пять копеек. Ещё одна малюсенькая модификация кода из Zeqfreed ©   (01.01.08 22:45) [1]
with TMyForm.Create( nil) do try
 ShowModal;
finally
 Free;
end;


korneley   (2008-01-02 00:50:00) [11]

А у экземпляра формы (ну, пытаюсь телепатировать) MyFormи поле есть MyForm, с типом TMyForm, от TFormунаследованной? Тогда да, делают. Но tryвсё-таки пониже надо переместить...


korneley   (2008-01-02 00:42:00) [12]


> with — так делают?

with MyForm do   try
     MyForm := TMyForm.Create(Self);
     ShowModal;
   finally
     Free;
   end;


Чё-то "трай" рановато. Прям как из "вредных советов" А на строчечку пониже - и вроде ничего... Уж не знаю хорошего, плохого...


Германн   (2008-01-02 00:40:00) [13]


> скукотища однако...
>

Ещё раз соглашусь :)


sniknik   (2008-01-02 00:34:00) [14]

> Вот и Маслов явился в тематическую конференцию...
скукотища однако...


Джо   (2008-01-02 00:01:00) [15]

> [3] Sergey Masloff   (01.01.08 22:56)
> Zeqfreed ©   (01.01.08 22:45) [1]
> begin и end для красоты или на случай построчной оплаты
> кода?

Вот и Маслов явился в тематическую конференцию...


{RASkov}   (2008-01-02 00:00:00) [16]

> [3] Sergey Masloff   (01.01.08 22:56)

:)
Он просто скопировал код автора и исправил второпях видные явно ошибки, а на "мелоч" не посмотрел :) Я так думаю...)


Sergey Masloff   (2008-01-01 22:56:00) [17]

Zeqfreed ©   (01.01.08 22:45) [1]
begin и end для красоты или на случай построчной оплаты кода?


guav   (2008-01-01 22:52:00) [18]

Я бы не стал так делать, т.к. ожет и не прокатить:

If the interpretation of obj involves indexing arrays or dereferencing pointers, these actions are performed once, before statement is executed. This makes with statements efficient as well as concise. It also means that assignments to a variable within statement cannot affect the interpretation of obj during the current execution of the with statement.


Zeqfreed   (2008-01-01 22:45:00) [19]

with TMyForm.Create(Self) do begin
   try
       ShowModal;
   finally
       Free;
   end;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо