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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.08.2015, 18:21   #51
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Сделай некое свойство для формы, куда запоминай индекс кликнутой колонки. А в клике по кнопке используй в проверке этой свойство.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.08.2015, 18:48   #52
Krasiosoft
Форумчанин
 
Аватар для Krasiosoft
 
Регистрация: 01.06.2015
Сообщений: 497
По умолчанию

Я тоже это писал, но видимо без примера тут не обойтись:

Unit1.pas - основная форма
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Unit2;

type
  TForm1 = class(TForm)
    btnShowForm2: TButton;
    procedure btnShowForm2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btnShowForm2Click(Sender: TObject);
var currInfo: TForm2Info;
begin

  Form2.ShowModal;

  currInfo:=Form2.GetInfo;
  if currInfo.status then ShowMessage(IntToStr(currInfo.savetype))
  else ShowMessage('Status = false');

end;

end.
Unit2.pas - вторая форма
Код:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type

  TForm2Info = Record
    status: boolean;
    savetype: integer;
  end;

  TForm2 = class(TForm)
    ComboBox1: TComboBox;
    btnOK: TButton;
    btnCANCEL: TButton;
    procedure btnOKClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure btnCANCELClick(Sender: TObject);
  private
    currInfo: TForm2Info;
    { Private declarations }
  public
    function GetInfo : TForm2Info;
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.btnOKClick(Sender: TObject);
begin
  currInfo.status:=true;
  currInfo.savetype:=ComboBox1.ItemIndex;
  close;
end;

function TForm2.GetInfo : TForm2Info;
begin
  result:=currInfo;
end;

procedure TForm2.FormShow(Sender: TObject);
begin
  currInfo.status:=false;
end;

procedure TForm2.btnCANCELClick(Sender: TObject);
begin
  close;
end;

end.
И прикрепил к сообщению сам проект на Delphi 7.

Но, то, что была ошибка с чтением адреса 00000004, это не с этим связанно. Но так просто будет корректнее, чтоб с формы 4 не нужно было ничего трогать на основной форме.
Вложения
Тип файла: rar proj.rar (175.4 Кб, 7 просмотров)
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).

Последний раз редактировалось Krasiosoft; 02.08.2015 в 18:50.
Krasiosoft вне форума Ответить с цитированием
Старый 02.08.2015, 18:59   #53
JUDAS
фонатик DELPHI
Форумчанин
 
Аватар для JUDAS
 
Регистрация: 14.01.2008
Сообщений: 714
По умолчанию

Цитата:
Сообщение от FleXik Посмотреть сообщение
Delphi 7
нет у делфи 7 древовидной разграфки кода

Господа, там у автора белеберда полнейшая. Куча перекрёстных ссылок на формы и перекрёсных вызовов по ссылкам.
Думаю что проект заработает если его кардинально переписать, по крайней ере корректно спроектировать взаимодействие между формами.
Вот где нужно рыть.
95% сбоев и ошибок приложений, находится в полу метрах от монитора

Последний раз редактировалось JUDAS; 02.08.2015 в 19:01.
JUDAS вне форума Ответить с цитированием
Старый 02.08.2015, 19:07   #54
Krasiosoft
Форумчанин
 
Аватар для Krasiosoft
 
Регистрация: 01.06.2015
Сообщений: 497
По умолчанию

Согласен, лучше все корректно переписать, но в данном случае ж нужно просто добавить форму. А когда вызывается форма 4, то она никак не должна зависеть от того, что там до этого было написано, т.е. проблема вроде как в форме 4.
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).
Krasiosoft вне форума Ответить с цитированием
Старый 02.08.2015, 20:18   #55
JUDAS
фонатик DELPHI
Форумчанин
 
Аватар для JUDAS
 
Регистрация: 14.01.2008
Сообщений: 714
По умолчанию

Krasiosoft, там по ходу до вызова формы 4, она уже активна причём через форму 3 которая вызывается с формы 1.
Говорю же очень запутаны ссылки и взаимные вызывы
95% сбоев и ошибок приложений, находится в полу метрах от монитора
JUDAS вне форума Ответить с цитированием
Старый 03.08.2015, 02:24   #56
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
там по ходу до вызова формы 4, она уже активна
да.........
FleXik вне форума Ответить с цитированием
Старый 03.08.2015, 02:30   #57
Krasiosoft
Форумчанин
 
Аватар для Krasiosoft
 
Регистрация: 01.06.2015
Сообщений: 497
По умолчанию

Но форма 4 не зависит же от других форм, верно? С помощью нее выбирается ж только формат сохранения, или я что-то не понимаю?
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).

Последний раз редактировалось Krasiosoft; 03.08.2015 в 02:32.
Krasiosoft вне форума Ответить с цитированием
Старый 03.08.2015, 04:07   #58
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Но форма 4 не зависит же от других форм, верно? С помощью нее выбирается ж только формат сохранения, или я что-то не понимаю?
да, и все.................

но кнопка сохранения (кнопка "ОК") лежит именно на Form4, а ListView на Form1

Последний раз редактировалось Stilet; 03.08.2015 в 08:10.
FleXik вне форума Ответить с цитированием
Старый 03.08.2015, 04:23   #59
Krasiosoft
Форумчанин
 
Аватар для Krasiosoft
 
Регистрация: 01.06.2015
Сообщений: 497
По умолчанию

Попробуйте сделать, как я описал в #52. Тогда все вернется, как и было до создания 4 формы. Будет просто функция, которая вернет нужные параметры для сохранения. Это более правильный подход, но боюсь, что проблема не с этим связана.
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).

Последний раз редактировалось Krasiosoft; 03.08.2015 в 04:26.
Krasiosoft вне форума Ответить с цитированием
Старый 04.08.2015, 16:52   #60
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Krasiosoft мне нужен пример с ListView а не с ComboBox, у ListView нет ItemIndex и мне нужен индекс колонки а не айтема.
FleXik вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Загрузка содержимого txt в ListView foxes Общие вопросы Delphi 6 27.04.2011 00:07
(VB) Проблема с сохранением phantom4eg Помощь студентам 0 16.09.2009 21:45
Проблема с сохранением данных KLOP Общие вопросы Delphi 10 09.04.2009 11:17
Загрузка содержимого txt в ListView Rendll Компоненты Delphi 2 26.03.2009 11:04
Проблема с сохранением БД! Disday БД в Delphi 4 21.04.2008 00:54