Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.11;
Скачать: CL | DM;

Вниз

Обращение к компонентам размещенным на MDI   Найти похожие ветки 

 
Ярослав   (2006-05-05 15:56) [0]

Пытаюсь на StatusBar размещенный на MDI  передать сообщение из
модуля   данных   выскакивает ошибка ..
Кто знает как правильно обращаться к компонентам  размещенным на  MDI  ???


 
Jeer ©   (2006-05-05 16:06) [1]

Напиши, как ты делаешь неправильно и что за ошибка.
К телепатам -  в другое место.


 
Плохиш ©   (2006-05-05 16:17) [2]


> Кто знает как правильно обращаться к компонентам  размещенным
> на  MDI  ???

Так же как и к компонентам не на МДИ. Но лучше исползовать механизм событий, создай обработчик события в модуле данных. Если речь идёт о MDI-Child, то создай в модуле данных механизм обработки списка форм, требующих обовления и пусть каждая форма, если ей надо, добавляет себя туда при создании и удаляет при разрушении.

> Jeer ©   (05.05.06 16:06) [1]
> К телепатам -  в другое место.

Как? Уже сослали? 8-O


 
Ярослав   (2006-05-05 16:20) [3]

function calctokurs(inif:TInifW;datset:tpFIBDataSet):boolean ;
var
s,d:string ;
skurs,ekurs,stoims,stoime,stgrn: extended ;
 
formss: Tform11 ;

begin
  try
  begin
         inif.IniFileName:=".ini";
         skurs:=inif.readfloat("akurs","aaS");
         ekurs:=inif.readfloat("akurs","ae");
        s:="Ñòîèìîñòü íà äàòó îöåíêè " ;
        d:=" ãðí" ;

        if stat="dol"  then
        begin
  stoims:=datset.FieldValues["st_s"] ;
         stgrn:=stoims*skurs ;
        end ;
        if stat="evr" then
        begin
  stoime:=datset.FieldValues["st_e"];
         stgrn:=stoime*ekurs ;
        end ;

formss.StatusBar1.Panels[1].Text:=s+formatfloat("###.###",stgrn)+d) ;

  end
  except
  messagedlg("Îøèáêà ðàñ÷åòà ñòîèìîñòè ",mterror,[mbok],0);
   datset.Cancel;
  end ;
end;


 
Ярослав   (2006-05-05 16:21) [4]

formss MDI форма


 
Ярослав   (2006-05-05 16:22) [5]

вешаю ее на обработчик  DataSourceDataChange
на не MDI это работало


 
Плохиш ©   (2006-05-05 16:27) [6]


> formss.StatusBar1.Panels[1].Text:=s+formatfloat("###.###",
> stgrn)+d) ;

Ой, я даже знаю текст ошибки :-)
TForm11(Application.MainForm).StatusBar1.Panels[1].Text:=s+formatfloat("###.###",stgrn)+d) ;


 
Плохиш ©   (2006-05-05 16:28) [7]


> Ярослав   (05.05.06 16:22) [5]
> на не MDI это работало

Это была галюцинация или функция была написана по другому.


 
Loginov Dmitry ©   (2006-05-05 18:26) [8]

Зачем сиё действие, если не секрет?


> var
..........
> formss: Tform11 ;


 
ЮЮ ©   (2006-05-06 03:39) [9]

formss тоже перенеси в параметры. Надеюсь, когда вызываешь calctokurs знаешь на какую MDI форму её выводить. Или постарайся вызывать её из методов MDI формы, тогда  formss  == Self. А ещё лучше сделать эту функциональность методом Tform11


 
Ярослав   (2006-05-06 09:56) [10]

Спасибо  я уже разобрался косяк был прост.. нужно было обращаться к активной mdi
uses   DB_BASE,zaprpol,main;

   procedure TSelect_DM.calctokur;
var
s,d:string ;
skurs,ekurs,stoims,stoime,stgrn: extended ;
   formss:tform11 ;

begin
  try
  begin

         inifw1.IniFileName:=".ini";
         skurs:=inifw1.readfloat("akurs","aaS");
         ekurs:=inifw1.readfloat("akurs","ae");
        s:="Стоимость на дату оценки " ;
        d:=" грн" ;

        if tform11(main_form.ActiveMDIChild).N8.Checked=true  then
        begin
  stoims:=select_pFIBDataSet.FieldValues["st_s"] ;
         stgrn:=stoims*skurs ;
        end ;
        if  tform11(main_form.ActiveMDIChild).N10.Checked=true  then
        begin
  stoime:=select_pFIBDataSet.FieldValues["st_e"];
         stgrn:=stoime*ekurs ;
        end ;

tform11(main_form.ActiveMDIChild).StatusBar1.Panels[1].Text:=s+formatfloat("###.###",stgrn)+d ;

  end
  except
  messagedlg("Ошибка расчета стоимости ",mterror,[mbok],0);
   select_pFIBDataSet.Cancel;
  end ;
end;


 
Ярослав   (2006-05-06 09:58) [11]

Правда
formss: tform11;
нужно убрать остатки из прошлой функции



Страницы: 1 вся ветка

Текущий архив: 2006.06.11;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.057 c
2-1148297951
Николай Владимирович
2006-05-22 15:39
2006.06.11
=> Странная штука с TreeView, не проходи мимо


2-1148528778
lobach
2006-05-25 07:46
2006.06.11
Html страницы


3-1145076058
LILY
2006-04-15 08:40
2006.06.11
Поиск в БД по подстановочным полям


2-1148744387
AlexanderMS
2006-05-27 19:39
2006.06.11
Клавиши быстрого доступа к меню при нажатии Alt.


2-1148550915
Alpine
2006-05-25 13:55
2006.06.11
Вопрос по генераторам