delphi 利用TscSplitView+TscGPPageViewer制作丝滑的可收缩菜单
设计图:

效果图(GIF录制的有点卡顿,实际上是很丝滑的):

主要控件设置(细讲不了啊,属性太多了):
TscGPCharGlyphButton控件
外观设置主要在Options里面,这里就不讲了,主要讲怎么设置图标,里面有很多内置图标,找一个你喜欢的

TscSplitView控件请看我之前的笔记
delphi TscSplitView控件学习笔记(1)
delphi TscSplitView控件学习笔记(2)
1.设置TscSplitView的OpenedWidth为200.CompactWidth=60,仅让图标能显示出来即可,设计阶段opened保持为True状态,等设置完全好以后,再关掉
2.scPanelViewLeft宽为60(与CompactWidth一致),align=alLeft
3.scPanelViewRight宽为140,align=alClient
4.scPanelRight,align=alClient
5.TscGPPageViewer控件没什么好设置的,主要就是在上面加点功能控件.有个技巧,就是设计好一页之后再新增第二页,不然你只能看到最后的一页
代码部分:
//所有图标共用
procedure TForm1.scGPCharGlyphButton1Click(Sender: TObject); var iTag: Integer; begin iTag := TControl(Sender).Tag; if scSplitView1.Opened then begin //重复点击时,关闭页面 if scGPPageViewer1.PageIndex = iTag then scSplitView1.Opened := False else scGPPageViewer1.PageIndex := iTag; end else begin scGPPageViewer1.PageIndex := iTag; scSplitView1.Opened := True; end; end; procedure TForm1.scGPLabel1Click(Sender: TObject); begin
//功能代码 scSplitView1.Opened := False; //隐藏子菜单 end;

浙公网安备 33010602011771号