Jump to content

Franco Grech

uniGUI Subscriber
  • Posts

    51
  • Joined

  • Last visited

Posts posted by Franco Grech

  1. Good day everyone

    I am building an app where i have to populate a UniTreeView from UniMenuItems in code.

    ItemTree is a UniTreeView

    ItemList Is a TList of UniMenuItems

    Code :

    procedure TdtfrmFolderBuilder.RefreshFolder;
    var
     xItem : TCostumeMenuItem;
     function GetParent(AParentID : integer) : TCostumeMenuItem;
     var
       xI :Integer;
     begin
         for xI := 0 to ItemList.Count -1 do
         begin
             if ItemList[xI].ITEM_ID = AParentID then
             begin
               Result := ItemList[xI];
               exit;
             end;
         end;
         Result := TCostumeMenuItem(nil);
     end;
     procedure PrepareTreeView;
     begin
       if Assigned(ItemTree) then begin
         ItemTree.Free;
         lst1.Items.Add('DDes');
       end;
       ItemTree := TUniTreeView.Create(Self);
       lst1.Items.Add('Created');
       ItemTree.OnClick := ItemTreeClick;
       //ItemTree.OnAjaxEvent := ItemTreeAjax;
       lst1.Items.Add('Events Added');
       ItemTree.Items.Clear;
       lst1.Items.Add('Items Cleared');
     end;
    begin
      PrepareTreeView;
      ItemTree.BeginUpdate;
      fdtrnsctn_buildfulltree.StartTransaction;
      fdqry_buildfulltree.Open;
      ItemList.Clear;
      unmntms_folder.Items.Clear;
    
    
      while fdqry_buildfulltree.Eof = false do
      begin
        xItem := TCostumeMenuItem.Create(Self);
        xItem.ID := fdqry_buildfulltree.FieldByName('O_ID').AsInteger;
        xItem.Tag := xItem.ID;
        xItem.HID := fdqry_buildfulltree.FieldByName('O_HID').AsInteger;
        xItem.ITEM_ID := fdqry_buildfulltree.FieldByName('O_ITEM_ID').AsInteger;
        xItem.PARENT_ID := fdqry_buildfulltree.FieldByName('O_PARENT_ITEM_ID').AsInteger;
        xItem.ItemName := fdqry_buildfulltree.FieldByName('finalname').AsString;
        xItem.Caption := xItem.ItemName;
        xItem.Name := 'btn_'  + xItem.ID.ToString;
        ItemList.Add(xItem);
        fdqry_buildfulltree.Next;
      end;
      fdqry_buildfulltree.Close;
      fdtrnsctn_buildfulltree.Commit;
    
      for xItem in ItemList do
      begin
         if xItem.PARENT_ID = 0 then
         begin
           unmntms_folder.Items.Add(xItem);
           //unpmn_detail1.Items.Add(xItem);
         end
         else
         begin
           GetParent(xItem.PARENT_ID).Add(xItem);
         end;
      end;
      lst1.Items.Add('Finished Vir Tree Build Totale  : ' +unmntms_folder.Items.Count.ToString);
      ItemTree.Align := alLeft;
      ItemTree.Parent := Self;
      ItemTree.Width := 350;
      ItemTree.SourceMenu := unmntms_folder;
      lst1.Items.Add('Source menu added');
      ItemTree.EndUpdate;
      lst1.Items.Add('Item count in SOurce : ' + unmntms_folder.Items.Count.ToString + ' Count in View : ' + ItemTree.Items.Count.ToString);
    
    end;

     

    The problem is after i add the source menu ItemTree.items.count returning a 0 i check in both debug mode and its a 0 however i can see the items in runtime.

    Why is this happening and how i can fix this issue.
    Thanks for any kind of help

  2. Good evening Everyone

    I am trying to use UniGui SendFile procedure
    and every time i run the procedure i am getting this error

    Cannot create file "T:\ProgramsCompiled\testapp\cache\testapp_exe\jg6jWWQ8qK10851E524\$$$\files\dressimages\L02\L0201001506_1.jpg". The system cannot find the path specified.

    and my code is this

    CurrentFile := \files\dressimages\L02\L0201001506_1.jpg
    
    procedure TdtFormTest.act_downloadExecute(Sender: TObject);
    var
      imgpath : string;
    begin
      imgpath := CurrentFile;
      UniSession.SendFile(imgpath);
    end;

    Did anyone got this error if yes how i can fix it.

    Thanks for any kind of help

  3. Good day everyone

    I would like to make my PageController to work in a multiline mode as its possible in normal win32 desktop app.
    Is it possible to make it under UniGui, if yes how its possible because i havent found a property like in win32 VCL app.

    Thanks for any kind of help

    • Upvote 1
×
×
  • Create New...