mirror of
https://github.com/zs-yg/kortapp-z.git
synced 2025-12-07 00:20:43 +08:00
94 lines
3.1 KiB
C#
94 lines
3.1 KiB
C#
using System;
|
|
using System.Drawing;
|
|
using System.Windows.Forms;
|
|
using System.IO;
|
|
using KortAppZ.Tools.Viewer;
|
|
|
|
namespace KortAppZ.Tools.Viewer
|
|
{
|
|
public class ImageViewerForm : Form
|
|
{
|
|
private Button? openButton;
|
|
|
|
public ImageViewerForm()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void InitializeComponent()
|
|
{
|
|
this.openButton = new Button();
|
|
//
|
|
// openButton
|
|
//
|
|
this.openButton.Text = "打开图片";
|
|
this.openButton.Size = new Size(120, 40);
|
|
this.openButton.Font = new Font("Microsoft YaHei", 10);
|
|
this.openButton.Anchor = AnchorStyles.None;
|
|
this.openButton.Click += new EventHandler(OpenButton_Click);
|
|
|
|
// 初始位置
|
|
CenterOpenButton();
|
|
|
|
// 窗体大小变化时重新居中按钮
|
|
this.Resize += (s, e) => CenterOpenButton();
|
|
|
|
//
|
|
// ImageViewerForm
|
|
//
|
|
this.Text = "图片查看器";
|
|
this.ClientSize = new Size(400, 300);
|
|
this.StartPosition = FormStartPosition.CenterScreen;
|
|
this.MinimumSize = new Size(300, 200);
|
|
this.MaximizeBox = false;
|
|
this.FormBorderStyle = FormBorderStyle.FixedDialog;
|
|
this.MaximizedBounds = Screen.FromHandle(this.Handle).WorkingArea;
|
|
this.Controls.Add(this.openButton);
|
|
}
|
|
|
|
private void CenterOpenButton()
|
|
{
|
|
if (openButton != null)
|
|
{
|
|
openButton.Location = new Point(
|
|
(this.ClientSize.Width - openButton.Width) / 2,
|
|
(this.ClientSize.Height - openButton.Height) / 2);
|
|
}
|
|
}
|
|
|
|
private void OpenButton_Click(object sender, EventArgs e)
|
|
{
|
|
OpenFileDialog openFileDialog = new OpenFileDialog();
|
|
openFileDialog.Filter = "图片文件|*.jpg;*.jpeg;*.png;*.bmp;*.gif;*.tiff;*.tif|所有文件|*.*";
|
|
|
|
if (openFileDialog.ShowDialog() == DialogResult.OK)
|
|
{
|
|
string filePath = openFileDialog.FileName;
|
|
ShowImage(filePath);
|
|
}
|
|
}
|
|
|
|
private void ShowImage(string filePath)
|
|
{
|
|
try
|
|
{
|
|
if (!ImageFileHandler.IsImageFile(filePath))
|
|
{
|
|
MessageBox.Show("不支持的图片格式", "错误",
|
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
return;
|
|
}
|
|
|
|
ImageDisplayForm displayForm = new ImageDisplayForm();
|
|
displayForm.LoadImage(filePath);
|
|
displayForm.Show();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show($"无法加载图片: {ex.Message}", "错误",
|
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
}
|
|
}
|