Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Ghi picturebox vào panel , không ghi ra hết

  1. #1
    Ngày gia nhập
    09 2011
    Bài viết
    4

    Mặc định Ghi picturebox vào panel , không ghi ra hết

    string[] Files = System.IO.Directory.GetFiles("E:\\anh");
    int i = 0;
    foreach (String fn in Files)
    {
    if (fn.ToLower().EndsWith(".bmp") || fn.ToLower().EndsWith(".dib") ||
    fn.ToLower().EndsWith(".jpg") || fn.ToLower().EndsWith(".jpeg") ||
    fn.ToLower().EndsWith(".jpe") || fn.ToLower().EndsWith(".jfif") ||
    fn.ToLower().EndsWith(".tif") || fn.ToLower().EndsWith(".jiff") ||
    fn.ToLower().EndsWith(".png"))
    {
    PictureBox p = new PictureBox();
    p.Image = Image.FromFile(fn);
    p.Width = Image.FromFile(fn).Width;
    p.Height = Image.FromFile(fn).Height + 50;
    p.BackgroundImage = Image.FromFile("E:\\Project.net\\image\\blackgroun d.png");
    p.Location = new Point(100, i * (p.Height + 50));
    Pa3.Controls.Add(p);
    i++;
    }

    Đây là đoạn code khi ghi 1 list picturebox vào trong panel. Nhưng nó lại không ghi đủ 60 cái picturebox , mà chỉ ghi ra tầm 25 cái . Tuy nhiên nếu ta để độ rộng thu nhỏ lại cố định:(Cỡ của 1 cái ảnh ~ 800x1300)

    p.Height = Image.FromFile(fn).Height - 500;
    và vị trí :
    p.Location = new Point(100, i * p.Height);

    thì nó ghi được nhiều ảnh hơn , tầm trên 30 cái ~~ . Từ đấy thấy cái panel có giới hạn , và giới hạn tầm ~ 30.000 (~ 1300 x 25) .

    Các pro chỉ với . Mình muốn ghi đủ 60 thậm chí hơn nữa tầm 200, 300 cái 1 lúc . Và nếu panel ko chứa nổi đủ picturebox , thì xài cái gì sẽ chứa đc

  2. #2
    Ngày gia nhập
    09 2009
    Bài viết
    26

    panel thì rộng có hạn còn hình thì vô kể, bạn phải đặt scrollbar cho panel bằng true thì nó sẽ tạo cái scrollbar khi nội dung bên trong rộng ra thêm

  3. #3
    Ngày gia nhập
    09 2011
    Bài viết
    4

    Trích dẫn Nguyên bản được gửi bởi kangoo1707 Xem bài viết
    panel thì rộng có hạn còn hình thì vô kể, bạn phải đặt scrollbar cho panel bằng true thì nó sẽ tạo cái scrollbar khi nội dung bên trong rộng ra thêm
    =Cái chính là giá trị value của cái scrollbar trong winform nó có 16 bit , tức độ dài nhất của nó là 2^16 = 32768

    Tức độ dài tối đa của panel hay textbox ... = height x wight = 32768 x 32768 .

    cái mình muốn là làm sao cho nó không bị giới hạn thế cơ , 32k là quá nhỏ , phần mềm mình có 1 số cái nó cần đọc lên tới ~ 200, 300k cơ .

    Nghe đồn trên mạng ,có trò tạo ra cái 32bit scrollbar tăng value lên tới từ 0 > hơn 2 tỉ , ~~ và 64bit scrollbar thì ko nói làm gì nữa . Nhưng mình không biết làm thế nào để được cái đó T___T

  4. #4
    Ngày gia nhập
    11 2008
    Bài viết
    207

    quăng giúp cái đống code vào thẻ code thôi, không đọc mấy bài kiểu này, hại mắt
    Visual C# Code:
    1. string[] Files = System.IO.Directory.GetFiles("E:\\anh");
    2. int i = 0;
    3. foreach (String fn in Files)
    4. {
    5. if (fn.ToLower().EndsWith(".bmp") || fn.ToLower().EndsWith(".dib") ||
    6. fn.ToLower().EndsWith(".jpg") || fn.ToLower().EndsWith(".jpeg") ||
    7. fn.ToLower().EndsWith(".jpe") || fn.ToLower().EndsWith(".jfif") ||
    8. fn.ToLower().EndsWith(".tif") || fn.ToLower().EndsWith(".jiff") ||
    9. fn.ToLower().EndsWith(".png"))
    10. {
    11. PictureBox p = new PictureBox();
    12. p.Image = Image.FromFile(fn);
    13. p.Width = Image.FromFile(fn).Width;
    14. p.Height = Image.FromFile(fn).Height + 50;
    15. p.BackgroundImage = Image.FromFile("E:\\Project.net\\image\\blackgroun d.png");
    16. p.Location = new Point(100, i * (p.Height + 50));
    17. Pa3.Controls.Add(p);
    18. i++;
    19. }

Các đề tài tương tự

  1. Fincontrol các control trong Panel khi tạo panel bằng code behind
    Gửi bởi quangbinhit trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 1
    Bài viết cuối: 13-12-2012, 09:11 PM
  2. Giúp đỡ về bắt sự kiện cho phần tử picturebox trong mảng picturebox
    Gửi bởi mr_congdanh1610 trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 3
    Bài viết cuối: 04-10-2012, 09:36 PM
  3. Graphic Làm Sao Remove Panel Các Control Bên Dưới Panel Đó Không Bị Nhấp Nháy
    Gửi bởi killdog9x trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 27-09-2012, 12:55 PM
  4. Picturebox trong winform. Làm sao load ảnh vào picturebox?
    Gửi bởi tinhspt trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 14
    Bài viết cuối: 02-06-2012, 07:18 PM
  5. Nhờ hướng dẫn về buffer khi in 1 list picturebox vào panel
    Gửi bởi luonghm trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 0
    Bài viết cuối: 29-09-2011, 09:15 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn