PDA

View Full Version : Problem with window form cua VB.NET Ba con nao biet xin chi giup



khoatranvn
20-11-2002, 16:31
Toi dang co du an ve VB.NET. Toi chua hieu tai sao khi minh add 1 so loai COM (maskeditbox, mshflexgrid,...) vao window form thi event load cua form khong the bat duoc.
Ba con nao biet nguyen nhan, cach khac phuc xin chi giup?

danceswithwolves
21-11-2002, 10:26
không hiểu bạn chuyển lên .NET rồi còn dùng mấy thứ cổ tích ấy để làm gì ? Các WinForm Controls của .NET Framework rất đầy đủ và tiện dụng cơ mà. Ví dụ, bạn thử dùng DataGrid sẽ thấy nó là DataGrid6 + MSHFlexGrid + extra stuffs.

Come to .NET with a fresh mind.

khoatranvn
21-11-2002, 11:04
Hi, Day la 1 du an thuc te nen khi chon cong nghe gi toi phai rat dan do.
Khi toi chon dotNet lam giai phap tuc toi cung co overview ve dotNet.
Trong qua trinh hien thuc toi phai lua chon giua ADO va ADO.NET, MSHFlexGrid or DataGrid cua dotNet sao cho phu hop voi nhu cau cua khach hang, giam thieu thoi gian coding,...
Nghia la phai can bang rat nhieu thu. Co rat nhieu third party component rat tien ich ma dotNet vi cong nghe moi nen cac hang cung chua ho tro.
Tom lai day la buoi giao thoi cung khong nen vut bo hoan toan cac gia tri cu.
Rat mong ban gop y

greenhill
21-11-2002, 13:19
Chao khoatranvn !
Thật ra mình cũng chưa biết nhiều về .NET , nhưng mình thử tạo 1 ví dụ nhỏ bằng VBNet test thử thì thấy bình thường cơ mà:
+ Tạo 1 App bằng VBNET
+ Customize Toolbox : chọn
- Microfost Masked Edit Control version 6.0, nằm trong system32/msmask32.ocx.
- Microfost Hierarchical Flexgrid Control, version 6.0 (OLEDB), nằm trong system32/MSHFLXGD.ocx.
- gắp 2 control này thả lên Form .
- Trong sự kiện Form_Load thêm MessageBox.
- Run : MessageBox xuất hiện , đâu có sao đâu.
Không biết có phải khoatranvn hỏi như vậy không nữa, nếu đúng thì khoatranvn coi chừng những vấn đề khác ảnh hưởng đến chư k phai 2 control này đâu.

À khoatranvn có thể cho mình biết sơ sơ về project mà khoatranvn làm không, có gì mình học hỏi thêm.

khoatranvn
21-11-2002, 14:27
Xin chao,
Neu ban de cac control do trong 1 form va chon form lam startup object thi form load co the bat duoc.
Neu ban lam 2 form:
- form thu 1 co main menu
- Tai su kien click cua 1 menu item ban showdialog form thu 2
Neu form thu 2 co cac control do thi su kien load cua form thu 2 se khong bat duoc

greenhill
22-11-2002, 09:40
Quả thật không sai , và mình đã thử dùng AddHandle cho Form mà vẫn không được, mình không biết rõ lắm 2 hàm BeginInit và EndInit cho các biến đối tượng khai báo kiểu COM để làm gì. Mình đề nghị 1 cách tà đạo như sau không biết bạn nghĩ sao ?
+ bạn bung : Windows Form Designer generated code ra
+ trong InitializeComponent tìm 2 hàm BeginInit(Khởi tạo) và EndInit(Kết thúc khởi tạo) cho đối tượng khai báo COM mà bạn xài.
+ Bạn bỏ đi hàm EndInit, nếu biết rõ BeginInit không cần thiết có thể bỏ luôn cũng được.
Mình rất thích tìm hiểu những vấn đề này , nhưng do quá bận bịu mong bạn thông cảm. Bạn nghiên cứu thêm thử xem nhé.

khoatranvn
23-11-2002, 09:19
Hi, Toi cung da tung khac phuc bang cach do nhung khong hieu qua lam.
Vi neu co nhieu maskeditbox, grid trong 1 form thi se phai bo nhieu dong, va neu sua lai design cua form thi IDE tu dong co lai nhung ham begininit va endinit. Minh lai phai tiep tuc bo lai. minh cung chua biet bo nhung dong do co anh huong gi khong.
Minh chua biet tai sao va cach khac phuc hieu qua nhat

hitech
04-12-2002, 08:30
Xin lỗi cho tôi có ý kiến một chút. Khi MS đưa ra .NET tức là đã muốn loại trừ thằng COM đi rồi, thế thì tại sao mình lại đi ngược với thực tế như vậy?
bây giờ xét tới vấn đề của bạn khoatranvn: xác định maskeditbox của bạn thuộc loại nào (textbox???). Bạn sẽ tạo lại một cotrol mới (tương tự như COM thôi) và thừa kế thằng Textbox. Override một số thông tin (ví dụ như xử lý Getkeymessage, hay thứ gì đó) Thế là bạn đã có một control mới ngoài những tính chất của textbox còn có thêm một số tính chất do bạn quy định.
Việc trên theo tôi thấy chỉ cần 1 buổi là xong. Trong khi đó việc xử lý các COM, phải mất nhiều thời gian hơn nhỉ?
Theo các nhà lập trình thì lời khuyên là nên hạn chế sử dụng các COM vì : khó trong việc phân phối, gở bỏ, và nâng cấp chương trình (vì phải đăng ký với hệ thống), bên cạnh đó nó làm tăng độ phức tạp và khó xử lý (bởi vì bạn không biết nó có ổn định chính xác bằng MS ko, trong khi đó có thể MS vẫn chưa ổn định?)

nguyenmag@yahoo.com

phanhuuhoan
13-05-2010, 14:54
Buồn thiệt quen gõ java nhưng lại bị thầy dí về những bài tập dự án nhỏ về dotnet, nên phải gõ vb khóc ...^^ Mình thích java cơ