Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.04.2015, 09:11   #21
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Простая программа по созданию и прохождению тестов со множеством наворотов ) спасибо за ответ, но все же хотелось бы поправить код из поста 19. Не скрыть форму, а уничтожить и освободить память

З.ы. почему-то на 64 разрядной семерке работает отлично, а вот на 32-иногда текст в мемо не прогружается, почему-сломал всю голову.
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 28.04.2015, 10:20   #22
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Вар 1 для нужной формы указать обработчик Onclose, в котором задавать значение Action :=caFree.
которое обеспечит "автоматическое" удаление формы и ВСЕХ объектов ( наследников TComponent) у которых в качестве собственника (Owner не Parent) была данная форма.
Код:
f:=TformX.Create(nil);
panel:=Tpanel.Create(f); // эта панель будет удалена (Free)  при удалении формы f
listbox:=TListbox.Create(panel); // при удалении панели (panel.Free)
btn:=TButton.Create(nil); 
btn.Parent:=f; // А вот кнопка ОСТАНЕТСЯ
Вар 2. FormX.Release;
Цитата:
Destroys the form and frees its associated memory.

Delphi syntax:

procedure Release;
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 29.04.2015, 00:42   #23
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

спасибо! release помог, но вот в чем еще загвоздка...

Код:
procedure TForm6.CheckListBox1DblClick(Sender: TObject);
var s: string;
  ii: integer;
begin
  if CheckListBox1.ItemIndex = -1 then Exit;


  CheckListBox1.OnClick(Self);




  if CheckListBox1.ItemIndex >= 0 then begin
    for ii := 0 to Screen.FormCount - 1 do
      if (Screen.Forms[ii] is TForm7) and (Screen.Forms[ii].Tag = CheckListBox1.ItemIndex) then
      begin

        Screen.Forms[ii].Show;
        Exit;
      end;

    with TForm7.Create(Application) do begin
      Caption := CheckListBox1.Items.Strings[CheckListBox1.ItemIndex];
      Tag := CheckListBox1.ItemIndex;

      memo1.lines.LoadFromFile(ts_two.strings[CheckListBox1.itemindex]); 
      memo1.text := form2.decrypt(memo1.text, 'ключ'); 
      s := CheckListBox1.Items[CheckListBox1.itemindex]; 
      Caption := Copy(s, Pos(') ', s) + 2, length(s)); 
      Memo1.Font.size := 12;
      Width := 550;
      Show;
    end;
  end;              
end;
почему-то в приведенном мной выше коде если написать это:

Код:
 for ii := 0 to Screen.FormCount - 1 do
      if (Screen.Forms[ii] is TForm7) and (Screen.Forms[ii].Tag = CheckListBox1.ItemIndex) then
      begin

        Screen.Forms[ii].Show;
        Exit;
      end;
то данные в мемо загружаются не полностью, а именно:

если щелчок по первой строке списка, то мемо пустое, а по остальным-все работает как должно.

Ставил разные "костыли" в итоге решил убрать этот кусок кода, но тогда дубляж создается того окна, который открыт. Как решить проблему с первой строкой списка? (ну как вы поняли-путь к файлу)
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 29.04.2015, 01:30   #24
ДралсяСошибками
Форумчанин
 
Аватар для ДралсяСошибками
 
Регистрация: 31.05.2011
Сообщений: 301
По умолчанию

Вроде ничего криминального, только если в листбоксе путь к файлу, то зачем брать путь из ts_two.strings
И ещё, попробуй декодировать в переменную, а уж потом отправлять в мемо)))
ДралсяСошибками вне форума Ответить с цитированием
Старый 29.04.2015, 02:23   #25
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Оговорка, имена файлов, а путь в списке.

Смысл заводить переменную? Читайте внимательнее: все грузит отлично, но не содержимое файла из первого элемента списка. Другие же файлы грузятся как надо.
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание форм Михаил Юрьевич Общие вопросы Delphi 5 16.07.2012 03:41
Динамическое создание romanzi Общие вопросы Delphi 1 24.08.2011 12:20
Создание нескольких форм Лера123 Общие вопросы Delphi 4 16.10.2010 18:16
Создание форм DeNyS=) Microsoft Office Access 2 13.12.2009 15:30
Динамическое создание нескольких форм Gypsy Общие вопросы Delphi 18 21.10.2009 14:52