Thay đổi kích cỡ khi ở chế độ kích cỡ màn hình khác nhau?

vuthuanbkvn

Member
Hội viên mới
Mình chưa biết làm cách nào để cho Access thiết kế tự thích nghi với các loại màn hình khác nhau? Ví dụ như loại 14 in,15,...17...21... ! Trời đất,nhiều loại lắm,mà khi thiết kế trên 17 in rồi cho chạy trên 14 in nhìn chán vô cùng? còn trên 21 in còn chán nữa? Các bác nào có biết đoạn mã nào khắc phục không nhỉ?:udau:
 
Ðề: Thay đổi kích cỡ khi ở chế độ kích cỡ màn hình khác nhau?

Hầu như không có cách nào vừa ý người ... lười biếng cả.
Giống như 1 trang web tiếng Anh không thể biên dịch tự động sang tiếng Việt được.
Bạn có thể thiết kế thành nhiều bộ phù hợp cho từng cỡ màn hình và các độ phân giải khác nhau.
Sau đó tùy người dùng chọn bộ nào.
Việc đó khá cực. Thay vì thiết kế 1 bản, bạn phải thiết kế 10 bản khác nhau.
Không thể chỉ đơn giản là cho co chữ lớn lên vài pixel hay chiều dài 1 text box tăng thêm 2cm ...
Vẫn buộc bạn phải chỉnh sửa cho đến khi cảm thấy rằng nó đẹp thì thôi.
 
Ðề: Thay đổi kích cỡ khi ở chế độ kích cỡ màn hình khác nhau?

Mình chưa biết làm cách nào để cho Access thiết kế tự thích nghi với các loại màn hình khác nhau? Ví dụ như loại 14 in,15,...17...21... ! Trời đất,nhiều loại lắm,mà khi thiết kế trên 17 in rồi cho chạy trên 14 in nhìn chán vô cùng? còn trên 21 in còn chán nữa? Các bác nào có biết đoạn mã nào khắc phục không nhỉ?:udau:

Ngay cả những sản phẩm thương mại "chính hãng" còn có mục system requirements nữa là. Trong đó nó ghi rõ là chế độ phân giải màn hình tốt nhất cho ứng dụng là bao nhiêu: 1024 x 768 ...

Cái 14", 17", ... chả ăn nhập gì đến cái độ phân giải màn hình cả. Nếu nó "to" inch thì cái form kèm theo các control trên đó nó sẽ to ra hay nhỏ lại mà thôi.

Đừng tự làm khó mình.
 
Ðề: Thay đổi kích cỡ khi ở chế độ kích cỡ màn hình khác nhau?

Ngay cả những sản phẩm thương mại "chính hãng" còn có mục system requirements nữa là. Trong đó nó ghi rõ là chế độ phân giải màn hình tốt nhất cho ứng dụng là bao nhiêu: 1024 x 768 ...

Cái 14", 17", ... chả ăn nhập gì đến cái độ phân giải màn hình cả. Nếu nó "to" inch thì cái form kèm theo các control trên đó nó sẽ to ra hay nhỏ lại mà thôi.

Đừng tự làm khó mình.

ý của mình là đang thiết kế trên 17" nếu chạy trên nền 14" thì các form sẽ nhỏ đi phù hợp với loại màn hình 14",các textbox cũng nhỏ đi theo tỉ lệ phù hợp...?
và nều chạy trên 19" sẽ to lên phù hợp.... chứ nếu mà mỗi cái phải làm một bản cho phù hợp thì ....:chay:
 
Ðề: Thay đổi kích cỡ khi ở chế độ kích cỡ màn hình khác nhau?

Chắc vuthuanbkvn đang bị nhầm rồi. cái form thiết kế ở màn hình nào nó cũng có tỷ lệ kích thuớc so với màn hình y như nhau. Chẳng qua nó chỉ khác nhau khi nó chạy ở những độ phân giải khác nhau mà thôi. KIểm tra lại xem đúng thế không nhé.
Còn chuyện điều chỉnh kích thước form theo mình không khó nhưng nếu chỉnh thêm các control trong form thì :k5686658: Nếu bạn muốn làm thì mình có ý thế này
Public 1 function changsize chẳng hạn. Mỗi 1 form khi load thì gọi cái function này đầu tiên.
Giá trị chiều cao, rộng, vị trí của form và các control được cho vào 1 table.
Việc còn lại là coding cho cái function (chưa làm mà cảm giác mất công ghê) :))
 
Ðề: Thay đổi kích cỡ khi ở chế độ kích cỡ màn hình khác nhau?

Chắc vuthuanbkvn đang bị nhầm rồi. cái form thiết kế ở màn hình nào nó cũng có tỷ lệ kích thuớc so với màn hình y như nhau. Chẳng qua nó chỉ khác nhau khi nó chạy ở những độ phân giải khác nhau mà thôi. KIểm tra lại xem đúng thế không nhé.
Còn chuyện điều chỉnh kích thước form theo mình không khó nhưng nếu chỉnh thêm các control trong form thì :k5686658: Nếu bạn muốn làm thì mình có ý thế này
Public 1 function changsize chẳng hạn. Mỗi 1 form khi load thì gọi cái function này đầu tiên.
Giá trị chiều cao, rộng, vị trí của form và các control được cho vào 1 table.
Việc còn lại là coding cho cái function (chưa làm mà cảm giác mất công ghê) :))

ví dụ như thế này á
Private Sub SysInfo1_DisplayChanged()
Me.Move SysInfo1.WorkAreaLeft, SysInfo1.WorkAreaTop, _
SysInfo1.WorkAreaWidth, SysInfo1.WorkAreaHeight
End Sub

Bạn nào có thể viết rõ không? mình thiết kế trên màn hình của mình khi cầm sang máy khác chạy thì thấy lộn xộn hết lên,bục mình ghê
 
Ðề: Thay đổi kích cỡ khi ở chế độ kích cỡ màn hình khác nhau?

Đây là đoạn code mình vừa viết chắc là cũng thỏa mãn được yêu cầu của bạn.
Private Sub Form_Load()

giatri = DLookup("tyle", "t1", "Lay= true")
MsgBox giatri
Me.InsideHeight = Me.InsideHeight / giatri
Me.InsideWidth = Me.InsideWidth / giatri
Dim ctrl As Control
For Each ctrl In Me.Controls
ctrl.Height = ctrl.Height / giatri
ctrl.Width = ctrl.Width / giatri
ctrl.Left = ctrl.Left / giatri
ctrl.Top = ctrl.Top / giatri
Next

End Sub

Các form khác cũng làm tương tự như vậy. Tuy nhiên cái này test cho 1 form, nếu làm nhiều thì biến nó thành 1 public sub để khi nào cần thì gọi
Giải thích 1 tí:
giatri = DLookup("tyle", "t1", "Lay= true")
với
t1: là tên bảng chứa các thông số về kích thước màn hình
tyle: tỷ lệ của các control được điều chỉnh
lay: (yes/no) dùng để xác định dòng thông số được chọn
 
Ðề: Thay đổi kích cỡ khi ở chế độ kích cỡ màn hình khác nhau?

Đây là đoạn code mình vừa viết chắc là cũng thỏa mãn được yêu cầu của bạn.
Private Sub Form_Load()

giatri = DLookup("tyle", "t1", "Lay= true")
MsgBox giatri
Me.InsideHeight = Me.InsideHeight / giatri
Me.InsideWidth = Me.InsideWidth / giatri
Dim ctrl As Control
For Each ctrl In Me.Controls
ctrl.Height = ctrl.Height / giatri
ctrl.Width = ctrl.Width / giatri
ctrl.Left = ctrl.Left / giatri
ctrl.Top = ctrl.Top / giatri
Next

End Sub

Các form khác cũng làm tương tự như vậy. Tuy nhiên cái này test cho 1 form, nếu làm nhiều thì biến nó thành 1 public sub để khi nào cần thì gọi
Giải thích 1 tí:
giatri = DLookup("tyle", "t1", "Lay= true")
với
t1: là tên bảng chứa các thông số về kích thước màn hình
tyle: tỷ lệ của các control được điều chỉnh
lay: (yes/no) dùng để xác định dòng thông số được chọn

Cái này của bạn được đấy,bạn đã làm chưa?
Bạn thử chia sẻ cho mình ít kinh nghiệm rõ hơn được ko? với từng loại một?
Bảng chứa các thông số màn hình lên làm như thế nào cho hợp lý nhỉ?
 
Ðề: Thay đổi kích cỡ khi ở chế độ kích cỡ màn hình khác nhau?

Cái này của bạn được đấy,bạn đã làm chưa?
Bạn thử chia sẻ cho mình ít kinh nghiệm rõ hơn được ko? với từng loại một?
Bảng chứa các thông số màn hình lên làm như thế nào cho hợp lý nhỉ?

Tất nhiên là làm rồi chứ không đủ khả năng để coding suông :)). Nhỡ có lỗi thì mọi người cười chết.
Bảng thông số "t1" có 2 trường dữ liệu chính: tyle va lay.
"Lay" để xác định là mình sẽ lấy thông số nào (dòng nào) trong cả 1 cái bảng có 1 đống thông số.
Sau đó dùng lệnh Dookup để lấy giá trị của "tyle" rồi đưa vào tính toán thôi.
VD: Chuẩn màn hình đang là 800*600
muốn form to ra khi ở chế độ 1024*786 thì chắc "tyle" phải là 1 số <1 rồi. Theo mình nghĩ nó là khoảng 800/1024 (đoán thế). Bạn cứ thử xem sao
Tương tự vậy nếu màn hình ở chế độ cao hơn nữa thì có lẽ cứ lấy 800/xxx là được.
 

CẨM NANG KẾ TOÁN TRƯỞNG


Liên hệ: 090.6969.247

KÊNH YOUTUBE DKT

Cách làm file Excel quản lý lãi vay

Đăng ký kênh nhé cả nhà

SÁCH QUYẾT TOÁN THUẾ


Liên hệ: 090.6969.247

Top