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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.04.2014, 01:03   #21
MIKE11IPME
Форумчанин
 
Регистрация: 03.05.2010
Сообщений: 159
По умолчанию

Цитата:
Сообщение от Streletz Посмотреть сообщение
Опять 25! В угадайки играем?
Совершенно не понятно, что Вы имеете в виду. Если программно назначить обработчик события, то это делается довольно легко.
А если нужно, где-то и как-то согласовать TChart с OnResize формы, то здесь уже гораздо сложнее.
В общем, такое впечатление, что Вы что-то не договариваете.
ДА скорее всего это то что надо по ссылке сяпки хотя надо сейчас опробовать

Последний раз редактировалось MIKE11IPME; 01.04.2014 в 01:06.
MIKE11IPME вне форума Ответить с цитированием
Старый 01.04.2014, 02:04   #22
MIKE11IPME
Форумчанин
 
Регистрация: 03.05.2010
Сообщений: 159
По умолчанию

В общем как-то понять не могу ("Внимание финальный вопрос"):
Код:
procedure TForm3.FormShow(Sender: TObject);
  var NewChart:TChart;     //TChart;
      NewChartSeries:TChartSeries;
      i,w,h:Byte;
      Wgraph,DWgraph:Integer;

begin
  if e<>0 then
    begin


        if e>1 then
          begin
            Wgraph:=Round((Form3.ClientWidth-GetSystemMetrics(SM_CXVSCROLL))/3);
            DWgraph:=((Form3.ClientWidth-GetSystemMetrics(SM_CXVSCROLL))-3*(Wgraph));
            w:=0;
            h:=0;
              for i:=1 to e do
                begin
                  NewChart:=TChart.Create(Form3);
                  NewChart.Parent:=Form3;
                  NewChartSeries:=TChartSeries.Create(NewChart);
                  NewChartSeries.ParentChart:=NewChart;
                  NewChart.Name:='Chart'+inttostr(i);
                  NewChart.Tag:=i;
                  NewChart.View3D:=False;

                  NewChart.Left:=w*Wgraph;
                  NewChart.Top:=h*Hgraph;
                  NewChart.Height:=Hgraph;

                    if (i mod 3) =0 then
                      NewChart.Width:=Wgraph+DWgraph
                    else NewChart.Width:=Wgraph;

                  Inc(w);

                    if  (i mod 3) = 0 then
                      begin
                        w:=0;
                        Inc(h);
                      end;
                      
                  NewChart.AddSeries(NewChartSeries);

                 { Вот тут программно задать код для выполнения во время события
                    Например: при двойном нажатии на объект открывать Form4.show }

                end;
          end;
          
    end;
end;
Кусок кода с которым вот пытаюсь сделать уже выше описанное грубо и не этично говоря аля NewChart.OnDblClick:=Form4.show;
MIKE11IPME вне форума Ответить с цитированием
Старый 01.04.2014, 09:16   #23
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,899
По умолчанию

Можно сделать так (перепиленое из пред.поста):
Код:
NewChart.OnDblClick := MySuperPuperDblClickHandler;
...
//// единый блок
type TForm3 = Form
...
public
  procedure MySuperPuperDblClickHandler(Sender: TObject);
...
////
procedure TForm3.MySuperPuperDblClickHandler(Sender: TObject);
begin
  Form4.show  
end;
Как показали мои исследования, простого способа зацепить анонимный метод (дельфи2009+) в виде обработчика события - нет (есть всякая магия, но это уже совсем иной разговор).
phomm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание экземпляра класса по имени Lasor Общие вопросы C/C++ 24 17.12.2012 22:28
Создание экземпляра класса biohazard120 Общие вопросы Delphi 11 15.09.2012 13:23
как описать событие? maxeebon Компоненты Delphi 11 09.08.2011 16:46
Освобождение памяти от экземпляра класса Mixim Общие вопросы .NET 8 05.01.2011 17:27
удаление экземпляра класса Juffin Общие вопросы Delphi 5 02.11.2010 11:57