From e0626bb126316ec5eaef490cab416d13638dc1ef Mon Sep 17 00:00:00 2001 From: ww-rm Date: Mon, 31 Mar 2025 01:58:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=A1=B9=E6=95=B0=E6=98=BE?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controls/SpineListView.Designer.cs | 49 ++++++++++++++++++- SpineViewer/Controls/SpineListView.cs | 2 + SpineViewer/Controls/SpineListView.resx | 3 ++ 3 files changed, 52 insertions(+), 2 deletions(-) diff --git a/SpineViewer/Controls/SpineListView.Designer.cs b/SpineViewer/Controls/SpineListView.Designer.cs index 5463fd3..c6ad364 100644 --- a/SpineViewer/Controls/SpineListView.Designer.cs +++ b/SpineViewer/Controls/SpineListView.Designer.cs @@ -55,7 +55,12 @@ imageList_LargeIcon = new ImageList(components); imageList_SmallIcon = new ImageList(components); timer_SelectedIndexChangedDebounce = new System.Windows.Forms.Timer(components); + statusStrip = new StatusStrip(); + toolStripStatusLabel_CountInfo = new ToolStripStatusLabel(); + tableLayoutPanel = new TableLayoutPanel(); contextMenuStrip.SuspendLayout(); + statusStrip.SuspendLayout(); + tableLayoutPanel.SuspendLayout(); SuspendLayout(); // // listView @@ -69,9 +74,10 @@ listView.GridLines = true; listView.LargeImageList = imageList_LargeIcon; listView.Location = new Point(0, 0); + listView.Margin = new Padding(0); listView.Name = "listView"; listView.ShowItemToolTips = true; - listView.Size = new Size(336, 445); + listView.Size = new Size(336, 414); listView.SmallImageList = imageList_SmallIcon; listView.TabIndex = 1; listView.UseCompatibleStateImageBehavior = false; @@ -256,14 +262,50 @@ timer_SelectedIndexChangedDebounce.Interval = 30; timer_SelectedIndexChangedDebounce.Tick += timer_SelectedIndexChangedDebounce_Tick; // + // statusStrip + // + statusStrip.Dock = DockStyle.Fill; + statusStrip.ImageScalingSize = new Size(24, 24); + statusStrip.Items.AddRange(new ToolStripItem[] { toolStripStatusLabel_CountInfo }); + statusStrip.Location = new Point(0, 414); + statusStrip.Name = "statusStrip"; + statusStrip.Size = new Size(336, 31); + statusStrip.TabIndex = 2; + statusStrip.Text = "statusStrip1"; + // + // toolStripStatusLabel_CountInfo + // + toolStripStatusLabel_CountInfo.Name = "toolStripStatusLabel_CountInfo"; + toolStripStatusLabel_CountInfo.Size = new Size(178, 24); + toolStripStatusLabel_CountInfo.Text = "已选择 0 项,共 0 项"; + // + // tableLayoutPanel + // + tableLayoutPanel.ColumnCount = 1; + tableLayoutPanel.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 100F)); + tableLayoutPanel.Controls.Add(listView, 0, 0); + tableLayoutPanel.Controls.Add(statusStrip, 0, 1); + tableLayoutPanel.Dock = DockStyle.Fill; + tableLayoutPanel.Location = new Point(0, 0); + tableLayoutPanel.Name = "tableLayoutPanel"; + tableLayoutPanel.RowCount = 2; + tableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.Percent, 100F)); + tableLayoutPanel.RowStyles.Add(new RowStyle()); + tableLayoutPanel.Size = new Size(336, 445); + tableLayoutPanel.TabIndex = 3; + // // SpineListView // AutoScaleDimensions = new SizeF(11F, 24F); AutoScaleMode = AutoScaleMode.Font; - Controls.Add(listView); + Controls.Add(tableLayoutPanel); Name = "SpineListView"; Size = new Size(336, 445); contextMenuStrip.ResumeLayout(false); + statusStrip.ResumeLayout(false); + statusStrip.PerformLayout(); + tableLayoutPanel.ResumeLayout(false); + tableLayoutPanel.PerformLayout(); ResumeLayout(false); } @@ -294,5 +336,8 @@ private ToolStripSeparator toolStripSeparator4; private ToolStripMenuItem toolStripMenuItem_AddFromClipboard; private System.Windows.Forms.Timer timer_SelectedIndexChangedDebounce; + private StatusStrip statusStrip; + private ToolStripStatusLabel toolStripStatusLabel_CountInfo; + private TableLayoutPanel tableLayoutPanel; } } diff --git a/SpineViewer/Controls/SpineListView.cs b/SpineViewer/Controls/SpineListView.cs index 97a49f0..aab53c5 100644 --- a/SpineViewer/Controls/SpineListView.cs +++ b/SpineViewer/Controls/SpineListView.cs @@ -269,6 +269,8 @@ namespace SpineViewer.Controls if (listView.SelectedItems.Count > 0) listView.SelectedItems[0].EnsureVisible(); + + toolStripStatusLabel_CountInfo.Text = $"已选择 {listView.SelectedItems.Count} 项,共 {listView.Items.Count} 项"; } private void listView_ItemDrag(object sender, ItemDragEventArgs e) diff --git a/SpineViewer/Controls/SpineListView.resx b/SpineViewer/Controls/SpineListView.resx index dc6495c..d28cde8 100644 --- a/SpineViewer/Controls/SpineListView.resx +++ b/SpineViewer/Controls/SpineListView.resx @@ -129,4 +129,7 @@ 771, 24 + + 1176, 24 + \ No newline at end of file