From 34037a0908fd62f664317da3aaa19095ad0aab87 Mon Sep 17 00:00:00 2001 From: JackLee <809262979@qq.com> Date: Wed, 29 Apr 2026 15:18:23 +0800 Subject: [PATCH] =?UTF-8?q?1-=E4=BF=AE=E6=94=B9=E4=B8=BB=E9=A1=B5=E5=AF=BC?= =?UTF-8?q?=E8=88=AA=E6=A8=A1=E5=BC=8F=202-=E5=88=A0=E9=99=A4filemenus,?= =?UTF-8?q?=E5=B0=B1=E6=98=AFtabbars=E7=8B=AC=E7=AB=8B=E6=A0=87=E7=AD=BE?= =?UTF-8?q?=E5=BC=B9=E5=87=BAmenus=E6=A0=8F=E7=9B=AE.=E5=8F=B3=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=92=8C=E5=AD=90=E6=A0=8F=E8=8F=9C=E5=8D=95=E4=BB=A3?= =?UTF-8?q?=E6=9B=BF.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/ets/entryability/InitWindow.ets | 4 +- entry/src/main/ets/pages/Index.ets | 6 +- entry/src/main/ets/pages/layout/SubColumn.ets | 6 -- .../ets/pages/titletabs/TitleColumnSub.ets | 5 +- .../src/main/ets/pages/titletabs/TitleTab.ets | 64 +++++++------------ 5 files changed, 31 insertions(+), 54 deletions(-) diff --git a/entry/src/main/ets/entryability/InitWindow.ets b/entry/src/main/ets/entryability/InitWindow.ets index 82c285e1..30cbaef8 100644 --- a/entry/src/main/ets/entryability/InitWindow.ets +++ b/entry/src/main/ets/entryability/InitWindow.ets @@ -36,8 +36,8 @@ function SetWinSize (width:number,height:number){ } function SetBackgroundColor(){ if(mdwInfo.win){ - mdwInfo.win.setWindowBackgroundColor('#B3FFFFFF'); - mdwInfo.win.setWindowContainerColor('#B3FFFFFF', '#FFFFFFFF'); + mdwInfo.win.setWindowBackgroundColor('#D9FFFFFF'); + mdwInfo.win.setWindowContainerColor('#D9FFFFFF', '#FFFFFFFF'); } } //窗口的事件监听 diff --git a/entry/src/main/ets/pages/Index.ets b/entry/src/main/ets/pages/Index.ets index 25ca8965..9d02ae4f 100644 --- a/entry/src/main/ets/pages/Index.ets +++ b/entry/src/main/ets/pages/Index.ets @@ -70,8 +70,8 @@ struct Index { //OpenCAX主界面整体布局,采用多行布局 Column() { //头部导航功能区 - Blank().height(uiMode.state?mdwInfo.displayHeight*0.07:0) - //TitleTab().height(uiMode.state?mdwInfo.displayHeight*0.07:0) + //Blank().height(uiMode.state?mdwInfo.displayHeight*0.07:0) + TitleTab().height(uiMode.state?mdwInfo.displayHeight*0.075:0) //分割线 Divider().vertical(false).strokeWidth(1).lineCap(LineCapStyle.Round).width('100%').backgroundColor(Color.Grey) //工具栏 @@ -118,7 +118,7 @@ struct Index { .height(mdwInfo.displayHeight*0.02) .backgroundColor(Color.Transparent) } - TitleTab().height(uiMode.state?mdwInfo.displayHeight*0.07:0) + //TitleTab().height(uiMode.state?mdwInfo.displayHeight*0.07:0) }.width('100%') .height('100%') diff --git a/entry/src/main/ets/pages/layout/SubColumn.ets b/entry/src/main/ets/pages/layout/SubColumn.ets index e257f1d0..f948728c 100644 --- a/entry/src/main/ets/pages/layout/SubColumn.ets +++ b/entry/src/main/ets/pages/layout/SubColumn.ets @@ -7,12 +7,6 @@ import { import { TitleEditBars } from "./TitleEditBars"; -//文件菜单数据初始化 -export let FileMenu:BaseMenuData= { - aMenus: TitleEditBars.mFileModel[0][0].grpBtn, - aIndex: 0 -}; - //图层切换 export let SwitchLayout:Array=[ {btnModel:[ModelType.BASE],btnName:"图层设置",btnNamed:"",btnIcon:"layer_settings",btnTips:"图层设置",btnEvent:{uid:'',command:'',page:'',type:EventType.EVENT,args:[]}}, diff --git a/entry/src/main/ets/pages/titletabs/TitleColumnSub.ets b/entry/src/main/ets/pages/titletabs/TitleColumnSub.ets index aec82998..1fe12a25 100644 --- a/entry/src/main/ets/pages/titletabs/TitleColumnSub.ets +++ b/entry/src/main/ets/pages/titletabs/TitleColumnSub.ets @@ -4,7 +4,6 @@ import { ViewDialog } from "../customcontroller/Dialog" import { mdwInfo } from '../dispwininfo/DispWinInfo' import { SubColumnMenu} from "../customcontroller/Button" import { - FileMenu, SwitchLayout, SwitchView, SwitchDisplayMode, @@ -12,6 +11,8 @@ import { EditMode, ControlMode } from '../layout/SubColumn' +import { TitleEditBars } from "../layout/TitleEditBars"; + @ComponentV2 export struct TitleColumnSub { @Local layerArray: Array = []; @@ -37,7 +38,7 @@ export struct TitleColumnSub { build(){ Row({space:5}){ SubColumnMenu({ - menus:FileMenu.aMenus as Array, icon:'base_shortcut_menu',name:'菜单'}) + menus:TitleEditBars.mFileModel[0][0].grpBtn as Array, icon:'base_shortcut_menu',name:'菜单'}) .margin({ top:0, left: 5, bottom: 0, right: 0 }) Text('|') .fontSize(16) diff --git a/entry/src/main/ets/pages/titletabs/TitleTab.ets b/entry/src/main/ets/pages/titletabs/TitleTab.ets index ac4a4833..3b101a41 100644 --- a/entry/src/main/ets/pages/titletabs/TitleTab.ets +++ b/entry/src/main/ets/pages/titletabs/TitleTab.ets @@ -1,10 +1,12 @@ import { hilog } from '@kit.PerformanceAnalysisKit'; import {TitleModel} from '../interface/ModelInterface' import {TitleEditBars} from '../layout/TitleEditBars' -import { FileMenu } from "../layout/SubColumn"; import {TitleTabContent} from './TitleTabContent' -import { TitleButton } from '../interface/ButtonInterface'; -import { BaseMenu } from '../customcontroller/Menu'; +import { + LengthMetrics, SegmentButtonV2ItemOptions, + SegmentButtonV2Items, + TabSegmentButtonV2 +} from '@kit.ArkUI'; @Entry @ComponentV2 @@ -14,52 +16,32 @@ export struct TitleTab { //当前的顶部导航选择页 @Local selectedIndex: number = 0; // 当前选中的索引 //模块Bar栏 - @Provider('curtModel') curtModel:Array|undefined= TitleEditBars.mModels.get(this.selectedIndex) + @Provider('curtModel') curtModel?:Array= TitleEditBars.mModels.get(this.selectedIndex) + //current segmentItems Count + @Local segmentItemsCount:number=0; + @Computed + get segmentItems(): SegmentButtonV2Items { + const options = (this.curtModel as Array).map(item => { + return {text: item.cmName} as SegmentButtonV2ItemOptions; + }); + this.segmentItemsCount=options.length; + return new SegmentButtonV2Items(options); + } @Builder build() { Flex({ direction: FlexDirection.Column }){ Scroll() { Row({space:0}) { - Button((FileMenu.aMenus[0] as TitleButton).btnName) - .width('7%') - .fontSize(16) - .fontColor($r('sys.color.font')) - .bindMenu(BaseMenu(FileMenu)) - .type(ButtonType.Normal) - .backgroundColor(Color.Transparent) - ForEach(this.curtModel, (item: TitleModel, index: number) => { - Button(){ - Column(){ - Text(item.cmName) - .height('95%') - .fontSize(index === this.selectedIndex ? 18 : 16) - .fontWeight(index === this.selectedIndex ? FontWeight.Bold : FontWeight.Normal) - .backgroundColor(Color.Transparent) - - Divider() - .height('5%') - .vertical(false) - .strokeWidth(2) - .lineCap(LineCapStyle.Round) - .color(Color.Grey) - .align(Alignment.Top) - .visibility(index === this.selectedIndex?Visibility.Visible:Visibility.Hidden) - }.width('100%') - .height('100%') - } - .width('7%') - .backgroundColor(index === this.selectedIndex ? $r('sys.color.container_modal_button_normal_baseboard') : Color.Transparent) - .type(ButtonType.Normal) - .onClick(() => { - this.titleBarTabs.changeIndex(index); - this.selectedIndex = index; - }) - }) + TabSegmentButtonV2({ + items: this.segmentItems, + selectedIndex: this.selectedIndex!!, + itemSelectedFontSize:LengthMetrics.fp(16) + }).width((8*this.segmentItemsCount)<100?`${8 * this.segmentItemsCount}%` : '100%') Blank().layoutWeight(1) } } - .height('25%') + .height('30%') .align(Alignment.Start) .scrollable(ScrollDirection.Horizontal) .scrollBar(BarState.Off) @@ -79,7 +61,7 @@ export struct TitleTab { } }) } - .height('75%') + .height('70%') .scrollable(true) .barHeight(0) .barMode(BarMode.Fixed)