Tôi đang desiging một trình xem ảnh đơn giản với khả năng thực hiện một số xử lý hình ảnh cơ bản. Tại thời điểm này tôi có vấn đề giữ PictureBox
tập trung bên trong một TabPage
tất cả các thời gian cũng như giữ chiều rộng và kích thước hình ảnh giống như hình ảnh hiển thị của nó. Cho đến nay tôi đã không thành công.Giữ PictureBox tập trung bên trong một vùng chứa
Tôi có mã sau mà tôi gọi trong hàm tạo biểu mẫu để định vị nó ở chính giữa. nó hoạt động lần đầu tiên để tập trung các picturebox:
private void SetPictureBoxOriginalSizeAndLocation(bool makeImageNull = false, DockStyle dockStyle = DockStyle.None)
{
if (makeImageNull) picBoxView.Image = null;
picBoxView.Dock = dockStyle;
var xPoint = tabImageView.Location.X + ((splitContainer.Panel2.Width/2)/2);
var yPoint = tabImageView.Location.Y;
var width = tabImageView.Width/2;
var height = (tabImageView.Height/2) - toolStripImageView.Height;
if (picBoxView.Image == null) return;
//Resize image according to width
picBoxView.Image = ImageMethods.ResizeImage(picBoxView.Image.Tag.ToString(), width, height, false);
picBoxView.Location = new Point(xPoint, yPoint);
picBoxView.Width = width;
picBoxView.Height = height;
}
Nhưng nó không thay đổi kích thước picturebox để hình ảnh của mình (bạn có thể nhìn thấy một phần đen mà là trở lại màu sắc cho sự kiểm soát picturebox):
vấn đề ngày càng nghiêm trọng ngay sau khi tôi thay đổi kích thước hình thức, vị trí picturebox sẽ leo lên top:
Tôi gọi mã ở trên trong sự kiện thay đổi kích thước của biểu mẫu là tốt, không có ý tưởng tại sao nó hoạt động khi ứng dụng bắt đầu. Sẽ rất tuyệt nếu ai đó có thể cho tôi biết những thuộc tính nào tôi nên quan tâm để đạt được một hình ảnh độc đáo ở giữa mà luôn luôn lớn như hình ảnh của nó.
Hãy thử đặt Dock để điền và đặt Hình ảnh làm hình nền. Có thể đặt BackgroundImageLayout thành Trung tâm. Và BackGroundColor to Transparent –
Kích thước 'picturebox.Image' có tương đương với kích thước' picturebox' không? bởi vì tôi cần phải làm việc trên các điểm ảnh của hình ảnh, tôi không biết nếu hình tượng là lớn hơn hình ảnh, hình ảnh tôi đang làm việc trên sẽ là picturebox chính nó ?! âm thanh ngu ngốc tôi biết! –
nhưng sau đó một lần nữa tôi nghĩ rằng tôi sẽ có vấn đề nếu tôi muốn phóng to trong hình ảnh! –