增加滚轮缩放
This commit is contained in:
1
SpineViewer/src/MainForm.Designer.cs
generated
1
SpineViewer/src/MainForm.Designer.cs
generated
@@ -339,6 +339,7 @@
|
||||
spinePreviewer.Dock = DockStyle.Fill;
|
||||
spinePreviewer.Location = new Point(3, 26);
|
||||
spinePreviewer.Name = "spinePreviewer";
|
||||
spinePreviewer.PropertyGrid = propertyGrid_Previewer;
|
||||
spinePreviewer.Size = new Size(986, 766);
|
||||
spinePreviewer.TabIndex = 0;
|
||||
spinePreviewer.RenderFrame += spinePreviewer_RenderFrame;
|
||||
|
||||
@@ -10,10 +10,7 @@ namespace SpineViewer
|
||||
public MainForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
propertyGrid_Previewer.SelectedObject = spinePreviewer.Property;
|
||||
|
||||
InitializeLogConfiguration();
|
||||
spinePreviewer.Property.Resolution = new(1280, 720);
|
||||
spinePreviewer.StartPreview();
|
||||
}
|
||||
|
||||
@@ -113,7 +110,7 @@ namespace SpineViewer
|
||||
|
||||
private void propertyGrid_PropertyValueChanged(object sender, PropertyValueChangedEventArgs e)
|
||||
{
|
||||
(sender as PropertyGrid).Refresh();
|
||||
(sender as PropertyGrid)?.Refresh();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
1
SpineViewer/src/SpinePreviewer.Designer.cs
generated
1
SpineViewer/src/SpinePreviewer.Designer.cs
generated
@@ -43,6 +43,7 @@
|
||||
panel.MouseDown += panel_MouseDown;
|
||||
panel.MouseMove += panel_MouseMove;
|
||||
panel.MouseUp += panel_MouseUp;
|
||||
panel.MouseWheel += panel_MouseWheel;
|
||||
//
|
||||
// backgroundWorker
|
||||
//
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace SpineViewer
|
||||
{
|
||||
public partial class SpinePreviewer : UserControl
|
||||
{
|
||||
public class PreviewerProperty
|
||||
private class PreviewerProperty
|
||||
{
|
||||
public const float ZOOM_MAX = 1000f;
|
||||
public const float ZOOM_MIN = 0.001f;
|
||||
@@ -161,9 +161,19 @@ namespace SpineViewer
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 帧渲染事件
|
||||
/// </summary>
|
||||
[Category("自定义"), Description("用于显示画面属性的属性页")]
|
||||
public PropertyGrid? PropertyGrid
|
||||
{
|
||||
get => propertyGrid;
|
||||
set
|
||||
{
|
||||
propertyGrid = value;
|
||||
if (propertyGrid is not null)
|
||||
propertyGrid.SelectedObject = Property;
|
||||
}
|
||||
}
|
||||
private PropertyGrid? propertyGrid;
|
||||
|
||||
[Category("自定义"), Description("帧渲染事件")]
|
||||
public event EventHandler<RenderFrameEventArgs>? RenderFrame;
|
||||
private void OnRenderFrame(float delta) { RenderFrame?.Invoke(this, new(RenderWindow, delta)); }
|
||||
@@ -171,9 +181,7 @@ namespace SpineViewer
|
||||
private readonly SFML.Graphics.RenderWindow RenderWindow;
|
||||
private readonly SFML.System.Clock Clock = new();
|
||||
private readonly SFML.Graphics.Color BackgroundColor = SFML.Graphics.Color.Green;
|
||||
|
||||
[Browsable(false)]
|
||||
public PreviewerProperty Property { get; }
|
||||
private readonly PreviewerProperty Property;
|
||||
|
||||
public SpinePreviewer()
|
||||
{
|
||||
@@ -244,6 +252,12 @@ namespace SpineViewer
|
||||
|
||||
}
|
||||
|
||||
private void panel_MouseWheel(object sender, MouseEventArgs e)
|
||||
{
|
||||
Property.Zoom *= (e.Delta > 0 ? 1.1f : 0.9f);
|
||||
PropertyGrid?.Refresh();
|
||||
}
|
||||
|
||||
private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e)
|
||||
{
|
||||
RenderWindow.SetActive(true);
|
||||
|
||||
Reference in New Issue
Block a user