Nên dẫn các bạn thích lập trình đi vào chuyên nghiệp sớm anh
@Nguyễn Duy Tuân, nếu như đang tuổi 23 hiểu sớm còn hơn chờ 30 mới biết "chuyện". ...
Mình đồng tình việc lập trình nên hướng dần đến tính chuyên nghiệp. Chuyên nghiệp nó thể hiện từ rất nhiều khía cạnh trong lập trình từ việc trình giao diện làm sao, format code như thế nào, tổ chức code, đặt tên,.... ti tỉ thứ mà người lập trình cần có nhiều thời gian học dần. Lập trình API để tạo ra control người lập trình cần có trình độ cao vượt bậc chứ không phải bình thường. Những bạn đam mê lập trình và muốn chinh phục lập trình API để tạo control thì cứ thong thả nghiền ngẫm lâu dài chứ không dễ ăn đâu.
Tiếp nối nội dung mình trình bày ở bài trước thì mình thêm ý kiến về việc lựa chọn control nào cho phần mềm của bạn.
Nếu bạn lựa chọn ListBox trong MSForms thì ta không bàn tiếp nữa. Còn nếu vì cần phải dùng controls ngoài để đáp ứng giao diện ứng dụng bạn phải lựa chọn control ngoài thì cần xem xét:
+ Nếu bạn chưa đạt đến trình độ cao siêu về API thì nên lựa chọn đồ có sẵn, đó là các
activex controls. Bạn chỉ cần học cách đẩy dữ liệu vào, đưa code tương tác vào các sự kiện của control là xong. Dành thời gian vào code nghiệp vụ, các kỹ thuật thuộc về control đã có nhà phát triển làm. Việc đăng ký OCX khi chạy ở máy khác là việc rất bình thường. Khi tạo phần mềm mà bạn muốn phân phối tới người khác sử dụng dễ dàng bạn nên học tạo bộ Setup để tự động hóa việc đăng ký.
+ Nếu bạn muốn file của mình có mã nguồn tạo control 100%, - không dùng activex controls thì bạn phải rất cẩn thận.
Lập trình API tạo controls chạy trong VBA là rất khó, bạn không thể bê nguyên code trong VB6 sang, bạn cũng không thể dùng code từ đời Office 2007 trở về trước vì nó hoàn toàn viết cho 32-bit. Từ Office 2010 trở lại đây có hai phiên bản 32 và 64-bit nên các code cũ chưa được nâng cấp phần lớn lỗi với 64-bit. Các bạn không thuộc chuyên gia về API thì không tự sửa được đâu. Vậy nếu bạn xác định dùng mã nguồn loại này thì bạn cần phải có chỗ dựa đó là một ai đó đủ khả năng hỗ trợ bạn sửa code để control chạy ngon lành nếu không là đứt gánh giữa đường.