首页 > 其他分享 >devexpress dxNavBar 用法

devexpress dxNavBar 用法

时间:2024-07-18 11:57:34浏览次数:12  
标签:Vcl devexpress dxNavBar aBarGroup 用法 Caption aBarItem TAction dxNavBar1

unit Unit2;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, cxGraphics, cxControls, cxLookAndFeels,
  cxLookAndFeelPainters, dxNavBarGroupItems, dxNavBarCollns, cxClasses,
  dxNavBarBase, dxNavBar, Vcl.StdCtrls, System.Actions, Vcl.ActnList,
  Vcl.PlatformDefaultStyleActnCtrls, Vcl.ActnMan, cxContainer, cxEdit,
  Vcl.WinXCtrls, cxTextEdit, dxOfficeSearchBox, cxMaskEdit, cxDropDownEdit,
  dxCalloutPopup, dxBar, Vcl.Menus, Vcl.ActnPopup;

type
  TForm2 = class(TForm)
    Memo1: TMemo;
    Button1: TButton;
    ActionManager1: TActionManager;
    Action1: TAction;
    Action2: TAction;
    Action3: TAction;
    Action4: TAction;
    dxNavBar1: TdxNavBar;
    dxOfficeSearchBox1: TdxOfficeSearchBox;
    SearchBox1: TSearchBox;
    PopupActionBar1: TPopupActionBar;
    asdfasdf1: TMenuItem;
    fffadfasdf1: TMenuItem;
    N1: TMenuItem;
    dxBarPopupMenu1: TdxBarPopupMenu;
    dxCalloutPopup1: TdxCalloutPopup;
    cxPopupEdit1: TcxPopupEdit;
    procedure Button1Click(Sender: TObject);
    procedure asdfasdf1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    function GetAcitonByCaption(const aCategory,aCaption: string): Integer;
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

function TForm2.GetAcitonByCaption(const aCategory,aCaption: string): Integer;
var
  i: Integer;
begin
  Result := -1;
  for i := 0 to ActionManager1.ActionCount-1 do
  begin
    if System.SysUtils.SameText(TAction(ActionManager1.Actions[i]).Category,aCategory) and
       System.SysUtils.SameText(TAction(ActionManager1.Actions[i]).Caption,aCaption)
    then
    begin
      Result := i;
      Exit;
    end;
  end;

end;

procedure TForm2.asdfasdf1Click(Sender: TObject);
begin
  //dxNavBar1.GetLinkAtSelectedPos(System.Bindings.Eval);
end;

procedure TForm2.Button1Click(Sender: TObject);
var
  aBarItem:TdxNavBarItem;
  aBarGroup:TdxNavBargroup;
  iAction :Integer;
begin
  dxNavBar1.Items.Clear;
  dxNavBar1.Groups.Clear;
  //++++++++++++++++++++++++++++++++++++++++++++++++//
  aBarGroup:=dxNavBar1.Groups.Add;
  aBarGroup.Caption := '系统设置';

  aBarItem:=dxNavBar1.Items.Add;
  aBarItem.Caption:= '我靠';
  aBarGroup.CreateLink(aBarItem);

  //aBarItem.OnClick:= button1.OnClick; //绑定事件
  //iAction := GetAcitonByCaption(cds_Master.FieldByName(aBarItem.Caption).AsString,sMenu);
  //aBarItem.Action := TAction(ActionManager1.Actions[iAction]);

  aBarItem:=dxNavBar1.Items.Add;
  aBarItem.Caption := '我草';
  aBarGroup.CreateLink(aBarItem);
  //iAction := GetAcitonByCaption(cds_Master.FieldByName(aBarItem.Caption).AsString,sMenu);
 // aBarItem.Action := TAction(ActionManager1.Actions[iAction]); aBarGroup.CreateLink(aBarItem);




   aBarGroup:=dxNavBar1.Groups.Add;
  aBarGroup.Caption := '权限管理';

  aBarItem:=dxNavBar1.Items.Add;
  aBarItem.Caption:= '权限1';
  aBarGroup.CreateLink(aBarItem);
  //aBarItem.OnClick:= button1.OnClick; //绑定事件
  //iAction := GetAcitonByCaption(cds_Master.FieldByName(aBarItem.Caption).AsString,sMenu);
  //aBarItem.Action := TAction(ActionManager1.Actions[iAction]);

  aBarItem:=dxNavBar1.Items.Add;
  aBarItem.Caption := '权限2';
  aBarGroup.CreateLink(aBarItem);



   aBarGroup:=dxNavBar1.Groups.Add;
  aBarGroup.Caption := '订单管理';

  aBarItem:=dxNavBar1.Items.Add;
  aBarItem.Caption:= '打印订单';
  aBarGroup.CreateLink(aBarItem);
  //aBarItem.OnClick:= button1.OnClick; //绑定事件
  //iAction := GetAcitonByCaption(cds_Master.FieldByName(aBarItem.Caption).AsString,sMenu);
  //aBarItem.Action := TAction(ActionManager1.Actions[iAction]);

  aBarItem:=dxNavBar1.Items.Add;
  aBarItem.Caption := '扫描发货';
  aBarGroup.CreateLink(aBarItem);
end;

end.

标签:Vcl,devexpress,dxNavBar,aBarGroup,用法,Caption,aBarItem,TAction,dxNavBar1
From: https://www.cnblogs.com/del88/p/18309226

相关文章

  • 深入解析`Arrays.asList`的用法与潜在陷阱
    引言在Java编程中,Arrays.asList是一个常用的工具方法,用于将数组转换为List。尽管其使用简单,但在实际应用中存在一些潜在的陷阱和误解。本文将深入探讨Arrays.asList的用法、其底层实现机制以及常见的陷阱,辅之以数据和实际案例分析。Arrays.asList的基本用法Arrays.asLis......
  • 高质量C/C++编程指南总结(十)—— const 用法
    const的用法1)用const修饰函数的输入参数如果输入的参数采用“指针传递”,那么加const修饰可以防止意外地改动该指针,起到保护作用。如果输入参数采用“值传递”,由于函数将自动产生临时变量用于复制该参数,该输入参数本来就无需保护,所以不要加const修饰。对于非内部数据类......
  • 界面控件DevExpress Blazor UI v24.1 - 发布全新TreeList组件
    DevExpress BlazorUI组件使用了C#为BlazorServer和BlazorWebAssembly创建高影响力的用户体验,这个UI自建库提供了一套全面的原生BlazorUI组件(包括PivotGrid、调度程序、图表、数据编辑器和报表等)。DevExpress Blazor控件目前已经升级到v24.1版本了,此版本发布了全新的TreeLi......
  • 详细解析Kafaka Streams中各个DSL操作符的用法
    什么是DSL?在KafkaStreams中,DSL(DomainSpecificLanguage)指的是一组专门用于处理Kafka中数据流的高级抽象和操作符。这些操作符以声明性的方式定义了数据流的转换、聚合、连接等处理逻辑,使得开发者可以更加专注于业务逻辑的实现,而不是底层的数据流处理细节。KafkaStreams......
  • DevExpress WPF中文教程 - 为项目添加GridControl并将其绑定到数据
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。无论是Office办公软件的衍伸产品,还是以数据为中心......
  • Linux中的一些基础命令用法
    1.文件的时间的概念创建时间修改时间访问时间使用stat命令获取文件的时间信息[root@tdr~]#stat/opt/d.txt 文件:"/opt/d.txt" 大小:0       块:0     IO块:4096 普通空文件设备:fd00h/64768d   Inode:33868148  硬链接:1权限:(06......
  • C#对象转换Json时的一些高级用法
    [JsonObject(MemberSerialization.OptIn)]//默认为不输出publicclassPeopleInfo{[JsonProperty]//需要输出publicstringName{get;set;}[JsonProperty]//需要输出publicintAge{get;set;}publicDateTimeBirthday{......
  • DevExpress WinForms自动表单布局,创建高度可定制用户体验(一)
    使用DevExpressWinForms的表单布局组件可以创建高度可定制的应用程序用户体验,从自动安排UI控件到按比例调整大小,DevExpress布局和数据布局控件都可以让您消除与基于像素表单设计相关的麻烦。P.S:DevExpressWinForms拥有180+组件和UI库,能为WindowsForms平台创建具有影响力的业务......
  • python中字典的用法
    1.字典的定义在Python中,字典(Dictionary)是一种可变的容器模型,它可以存储任意类型对象,如整数、浮点数、字符串、列表、元组等。字典的每个元素都是一个键值对(key-valuepair)。键(key)用于唯一标识一个元素,而值(value)则是与该键相关联的数据。字典是无序的,即元素的存储顺序与它们的......
  • Wmware简单用法之Tree、Find、修改文件的创建时间及删除 、Scp、生成指定大小的文件
    find主要进行文件搜索基本语法find[文件路径][选项选项的值]常见选项-name 根据文件名称搜索文件,支持通配符*-type f代表普通文件   d代表目录*通配符在linux系统中,如果要查找的⽂件的名称不清晰,可以使⽤部分⽂件名+*搜索[root@localhost~]#find/opt/......