Перейти к содержанию
Fire Monkey от А до Я

Просто Проги

Пользователи
  • Постов

    65
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Просто Проги

  1. пусто ошибок нет но и нечего не выводит вообще не понимаю чего не так вот полный код unit

    unit Unit1;

    interface

    uses
      System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
      FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
      FMX.ListView.Types, FMX.ListView.Appearances, FMX.ListView.Adapters.Base,
      FMX.Controls.Presentation, FMX.StdCtrls, FMX.ListView, System.Rtti,
      System.Bindings.Outputs, Data.Bind.EngExt, Fmx.Bind.DBEngExt, FMX.Layouts,
      FMX.ListBox, Data.Bind.Components, FMX.Objects;

    type
      TForm1 = class(TForm)
        Button1: TButton;
        BindingsList1: TBindingsList;
        ListBox1: TListBox;
        Image1: TImage;
        Image2: TImage;
        StyleBook1: TStyleBook;
        SpeedButton1: TSpeedButton;
        Button2: TButton;
        procedure FormActivate(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;

    var
      Form1: TForm1;
      var
    listitem:Tlistboxitem;
    listimg1,listimg2:Timage;
    listlabel1,listlabel2,listlabel3:Tlabel;
    listLayout:Tlayout;
    progres:TProgressBar;
    but:TSpeedButton;
    i:integer;
    implementation

    {$R *.fmx}

    procedure TForm1.Button2Click(Sender: TObject);
    var
    lbItemSel: TListBoxItem;
    var n: Integer;
    i:integer;
    begin
    //Form1.Caption:=ListBox1.ItemIndex.ToString;
    //ListBox1.ItemIndex:=ListBox2.ItemIndex;
    //  lbItemSel := ListBox1. Selected ;
    //  if  ( lbItemSel is TListBoxItem )  then
    //  begin

    //   Form1.Caption := TListBoxItem.sty
    //     listitem ( lbItemSel ).but.caption ;
    //     Button2Click(self);

    //form1.Caption:=ListBox1.ItemIndex.ToString();
     if (ListBox1.Selected.FindComponent('listlabel1') is Tlabel) then
    Form1.Caption:=    (ListBox1.Selected.FindComponent('listlabel1') as Tlabel).Text;
     end;
    end;


    procedure TForm1.FormActivate(Sender: TObject);

    begin

      ListBox1.BeginUpdate;
    for I := 0 to 100 do begin

     listitem:=TListBoxItem.Create(ListBox1);

      listitem.Parent:=ListBox1;
      listitem.Height:=80;
      listimg1:=TImage.Create(listitem);
      listimg1.Parent:=listitem;
      listimg1.Width:=50;
      listimg1.Height:=50;
      listimg1.Align:=TAlignLayout.Left;
      listimg1.Bitmap:=Image1.Bitmap;
      listimg1.Margins.Left:=5;
      listimg1.Margins.Top:=5;
      listimg1.Margins.Bottom:=5;
      //
        listimg2:=TImage.Create(listitem);
        listimg2.Parent:=listitem;
        listimg2.Width:=50;
        listimg2.Height:=50;
        listimg2.Align:=TAlignLayout.Right;
     //   progres:=TProgressBar.Create(listitem);
    //    progres.Parent:=listitem;
    //    progres.Width:=500;
     //   progres.Height:=25;
    //    progres.Align:=TAlignLayout.Center;
    //    progres.Value:=10;
        //
        but:=TSpeedButton.Create(listitem);
        but.Parent:=listitem;
        but.StyleLookup:='pausebutton';
        but.Width:=50;
        but.Height:=50;
        but.Margins.Right:=10;
        but.Align:=TAlignLayout.Right;
        but.OnClick := Button2Click;

          listLayout:=TLayout.Create(listitem);
          listLayout.Parent:=listitem;
          listLayout.Align:=TAlignLayout.Client;

           listlabel1:=TLabel.Create(listLayout);
           listlabel1.Parent:=listLayout;
           listlabel1.Align:=TAlignLayout.Top;
           listlabel1.Height:=25;
           listlabel1.StyledSettings:=[TStyledSetting.Family,TStyledSetting.Style];
           listlabel1.TextSettings.Font.Size:=12;
           listlabel1.TextSettings.FontColor:=TAlphaColorRec.White;
           listlabel1.Text:=IntToStr(Random(100));

           listlabel2:=TLabel.Create(listLayout);
           listlabel2.Parent:=listLayout;
           listlabel2.Align:=TAlignLayout.Top;
           listlabel2.Height:=25;
           listlabel2.StyledSettings:=[TStyledSetting.Family,TStyledSetting.Style];
           listlabel2.TextSettings.Font.Size:=10;
           listlabel2.TextSettings.FontColor:=TAlphaColorRec.Gray;
           listlabel2.Text:='00:00';

           listlabel3:=TLabel.Create(listLayout);
           listlabel3.Parent:=listLayout;
           listlabel3.Align:=TAlignLayout.Top;
           listlabel3.Height:=25;
           listlabel3.StyledSettings:=[TStyledSetting.Family,TStyledSetting.Style];
           listlabel3.TextSettings.Font.Size:=15;
           listlabel3.TextSettings.FontColor:=TAlphaColorRec.Gray;
           listlabel3.Text:='00:00';
         //  listlabel2.Visible:=false;

          ListBox1.EndUpdate;

    end;
    end;

     

    end.

     

  2. О как а нет примера как им пользоваться, я пишу ListBox1.Selected.FindComponent('listlabel2.text');

    Но получаю ошибки ( пробовал читать про это свойство но так и не понял как это должно работать (

  3. Собственно вопрос всё ещё копаю в сторону listbox сделал такой listbox

      var
    listitem:Tlistboxitem;
    listimg1:Timage;
    listlabel1:Tlabel;
    listLayout:Tlayout;
    progres:TProgressBar;
    but:TSpeedButton;

    begin

    listitem:=TListBoxItem.Create(ListBox1);

     listitem.Parent:=ListBox1;
     listitem.Height:=50;
      listimg1:=TImage.Create(listitem);
      listimg1.Parent:=listitem;
      listimg1.Width:=50;
      listimg1.Height:=50;
      listimg1.Align:=TAlignLayout.Left;
      listimg1.Bitmap:=Image1.Bitmap;
      //
        but:=TSpeedButton.Create(listitem);
        but.Parent:=listitem;
        but.StyleLookup:='myControl';
        but.Align:=TAlignLayout.Right;

          listLayout:=TLayout.Create(listitem);
          listLayout.Parent:=listitem;
          listLayout.Align:=TAlignLayout.Client;

           listlabel1:=TLabel.Create(listLayout);
           listlabel1.Parent:=listLayout;
           listlabel1.Align:=TAlignLayout.Top;
           listlabel1.Height:=25;
           listlabel1.StyledSettings:=[TStyledSetting.Family,TStyledSetting.Style];
           listlabel1.TextSettings.Font.Size:=12;
           listlabel1.TextSettings.FontColor:=TAlphaColorRec.White;
           listlabel1.Text:='event';
          end;
      finally
          ListBox1.EndUpdate;

    как получить доступ к кнопке в созданном listbox ? или хотя бы  как получить текст в  listlabel1 в выбранном item.

    поидее должно работать item.selected но что то опять не работает или я туплю)

  4. собственно поставил я 10 версию) но проблема не исчезла))

    var
    item: TMetropolisUIListBoxItem;
    i:integer;
    begin
    for I := 0 to 100 do   begin

    item :=TMetropolisUIListBoxItem.Create(ListBox1);

    item.Title:='Title';
    item.SubTitle:='sub';
    //item.Description:=dua;
    //ListBox1.AddObject(item);
    item.Parent := ListBox1;
    end;
    end;

    таким  образом я запомнил всё норм но стоит мне немного проскролить а потом закрыть то будет ошибка в модуле System

    procedure TObject.FreeInstance;
    begin
      CleanupInstance;
      _FreeMem(Pointer(Self));
    end;

    чего ей надо??)

  5. Привет всем может кто подскажет что не так создаю процедуру для добавления

    var

     item: TMetropolisUIListBoxItem;

    begin

    item :=TMetropolisUIListBoxItem.Create(Form1);

    item.Title:='Title';
    item.SubTitle:='sub';
    item.Description:=dua;
    ListBox1.AddObject(item);

    end;

    Всё добавляется,но когда я пытаюсь закрыть программу то падает ошибка

    procedure TObject.FreeInstance;
    begin
      CleanupInstance;
    _FreeMem(Pointer(Self));// на этой строке ошибка
    end;

    Как я понял что ошибка связана с памятью как можно правильно освободить память? и избавиться от этой ошибки )

×
×
  • Создать...