Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Hỏi] Xử lý Form khi độ phân giải màn hình khác nhau.
#1
Chào các bạn.

Form mình thiết kế là 1 Form nhỏ, khi chạy ở máy mình thì hiển thị đúng vị trí như lúc thiết kế còn khi chép qua máy khác chạy thì vẫn đúng vị trí như lúc thiết kế nhưng vì độ phân giải ở máy đó cao hơn hoặc thấp hơn nên Form thường dịch qua bên trái hoặc phải 1 đoạn, lên bên trên hoặc xuống bên dưới 1 đoạn. Hoặc thu nhỏ cửa sổ thì nó không căn giữa cái form nữa...
Hỏi làm sao để điều chỉnh độ phân giải của form khi chuyển qua máy khác hoặc thu nhỏ cửa sổ nó vẫn căn chỉnh như ở chế độ Maximize.

http://www.mediafire.com/view/ickce6256451b45/1.png
Chữ ký của nguyenhoangbanhan Xin chào, mình là nguyenhoangbanhan, Tham gia http://thuthuataccess.com/forum từ ngày 09-06 -15.
Reply
Những người đã cảm ơn
#2
Bạn sử dụng cái này
Mã PHP:
'On Error Resume Next

Dim giatri1 As Double
Dim giatri2 As Double
giatri1 = Laychieudai() / PhanGiaiMHdai
giatri2 = Laychieurong() / PhanGiaiMHrong
Me.InsideWidth = Me.InsideWidth / giatri1
Me.InsideHeight = Me.InsideHeight / giatri2

Dim ctrl As Control

For Each ctrl In Me.Controls
ctrl.Width = ctrl.Width / giatri1
ctrl.Height = ctrl.Height / giatri2
ctrl.Left = ctrl.Left / giatri1
ctrl.Top = ctrl.Top / giatri2

Next 
Chữ ký của tt1212 Present Nhận viết phần mềm, hỗ trợ viết phần mềm, hợp tác viết phần mềm trên nên Microsoft Access mọi phiên bản Liên hệ: Mr Đức -989276236. Email: Tantriviet.vnn@gmail.com website:http://www.tantrivietsoft.com/
Reply
Những người đã cảm ơn
#3
(19-06-15, 07:31 PM)tt1212 Đã viết: Bạn sử dụng cái này
Mã PHP:
'On Error Resume Next

Dim giatri1 As Double
Dim giatri2 As Double
giatri1 = Laychieudai() / PhanGiaiMHdai
giatri2 = Laychieurong() / PhanGiaiMHrong
Me.InsideWidth = Me.InsideWidth / giatri1
Me.InsideHeight = Me.InsideHeight / giatri2

Dim ctrl As Control

For Each ctrl In Me.Controls
ctrl.Width = ctrl.Width / giatri1
ctrl.Height = ctrl.Height / giatri2
ctrl.Left = ctrl.Left / giatri1
ctrl.Top = ctrl.Top / giatri2

Next 
cái này đặt ở đâu. mình đang xài access 2003 nha.
Chữ ký của nguyenhoangbanhan Xin chào, mình là nguyenhoangbanhan, Tham gia http://thuthuataccess.com/forum từ ngày 09-06 -15.
Reply
Những người đã cảm ơn
#4
(19-06-15, 10:40 PM)nguyenhoangbanhan Đã viết: cái này đặt ở đâu. mình đang xài access 2003 nha.

Đặt ở sự kiện Form Load.
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#5
(19-06-15, 06:18 PM)nguyenhoangbanhan Đã viết: Chào các bạn.

Form mình thiết kế là 1 Form nhỏ, khi chạy ở máy mình thì hiển thị đúng vị trí như lúc thiết kế còn khi chép qua máy khác chạy thì vẫn đúng vị trí như lúc thiết kế nhưng vì độ phân giải ở máy đó cao hơn hoặc thấp hơn nên Form thường dịch qua bên trái hoặc phải 1 đoạn, lên bên trên hoặc xuống bên dưới 1 đoạn. Hoặc thu nhỏ cửa sổ thì nó không căn giữa cái form nữa...
Hỏi làm sao để điều chỉnh độ phân giải của form khi chuyển qua máy khác hoặc thu nhỏ cửa sổ nó vẫn căn chỉnh như ở chế độ Maximize.

http://www.mediafire.com/view/ickce6256451b45/1.png

Nếu bạn chỉ có 1 vài form đơn giản bạn có thể xử dụng code của bạn tt1212 để xử lý. Nhưng với 1 ứng dụng lớn tốn nhiều ram. Bạn nên thiết kế mỗi độ phân giải màn hình khác nhau với từng kiểu form tương thích. Nhất là trong các trường hợp chạy ứng dụng trên mạng. Bởi vì việc xử lý  lệnh vẽ lại giao diện trong load form chiếm tài nguyên máy rất lớn.
Chữ ký của tranthanhan1962 Kết quả cuối cùng của một đời người, không phải bạn có được bao nhiêu tiền bạc, tài sản. Mà bạn còn bao nhiêu người bạn  thumbs up
ღღღღღTài sản của tranthanhan1962 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  [Hỏi] Refresh Form và tiếp tục hoạt động Godspear 2 84 08-12-16, 12:48 PM
Bài mới nhất: Godspear
  [Hỏi] Cách thêm dữ liệu vào form Main_Sub NganNguyen 1 39 06-12-16, 02:23 AM
Bài mới nhất: maidinhdan
  Tự động hiện Form khi loading hết thời gian ChiMai 1 49 02-12-16, 08:59 PM
Bài mới nhất: ongke0711
Photo [Hỏi] Mở Form trên access 2007 báo lỗi jason 5 195 22-11-16, 09:23 AM
Bài mới nhất: jason
  Query hiện lên trên form? feeling 4 167 09-11-16, 09:49 PM
Bài mới nhất: toancvp

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ