Chèn ảnh vào nút Button và có thể thay đổi ảnh khác nếu cần.

  • Thread starter Thread starter uronbeo
  • Ngày gửi Ngày gửi
Liên hệ QC

uronbeo

Thành viên mới
Tham gia
2/6/12
Bài viết
31
Được thích
0
Chào các bác,

Em có 1 file như đính kèm với nút button và em muốn chèn ảnh vào nút này, cũng như có thể thay đổi ảnh đã chèn thành ảnh khác khi nhấn lên nút.
Các bác hướng dẫn giúp em với ạ.

- CommandButton1 là nơi hiển thị ảnh và kích thước ảnh cố định theo khung dài - rông của button này
- Nhấn vào Button sẽ Browse đến nới chưa file ảnh -> Chọn ảnh, ảnh sẽ hiển thị vào vừa khung dài - rông của Button
- Có thể nhấn tiếp để chọn lại ảnh khác nếu muốn

Em cảm ơn nhiều.
 

File đính kèm

Chào các bác,

Em có 1 file như đính kèm với nút button và em muốn chèn ảnh vào nút này, cũng như có thể thay đổi ảnh đã chèn thành ảnh khác khi nhấn lên nút.
Các bác hướng dẫn giúp em với ạ.

- CommandButton1 là nơi hiển thị ảnh và kích thước ảnh cố định theo khung dài - rông của button này
- Nhấn vào Button sẽ Browse đến nới chưa file ảnh -> Chọn ảnh, ảnh sẽ hiển thị vào vừa khung dài - rông của Button
- Có thể nhấn tiếp để chọn lại ảnh khác nếu muốn

Em cảm ơn nhiều.
Bác thử code này rồi tùy biến xem:
Mã:
Private Sub CommandButton1_Click()
    Dim sPicName As String
    Const sFolder As String = "C:\Users\Acer\Pictures\"    '<-----Tên thư mục đường dần lưu hình ảnh
    sPicName = "cam-on-cuoc-song.jpg"                      '<-----Tên ảnh, chú ý cả đuôi nha
    CommandButton1.Picture = LoadPicture(sFolder & sPicName)
End Sub
 
Bác thử code này rồi tùy biến xem:
Mã:
Private Sub CommandButton1_Click()
    Dim sPicName As String
    Const sFolder As String = "C:\Users\Acer\Pictures\"    '<-----Tên thư mục đường dần lưu hình ảnh
    sPicName = "cam-on-cuoc-song.jpg"                      '<-----Tên ảnh, chú ý cả đuôi nha
    CommandButton1.Picture = LoadPicture(sFolder & sPicName)
End Sub
code này lỗi bác ạ
1646400933460.png
1646400953749.png
 
Phải là "C:\Temp\"
-------------
Trong module Sheet1 thay bằng
Mã:
Sub CommandButton1_Click()
     With Application.FileDialog(msoFileDialogFilePicker)
        .AllowMultiSelect = False
        .ButtonName = "Submit"
        .Title = "Select an image file"
        .Filters.Clear
        .Filters.Add "JPG", "*.JPG"
        .Filters.Add "JPEG File Interchange Format", "*.JPEG"
        .Filters.Add "Graphics Interchange Format", "*.GIF"
        .Filters.Add "Portable Network Graphics", "*.PNG"
        .Filters.Add "Tag Image File Format", "*.TIFF"
        .Filters.Add "All Pictures", "*.*"
    
        If .Show = -1 Then
            CommandButton1.Picture = LoadPicture(.SelectedItems(1))
        Else
            MsgBox ("Cancelled.")
        End If
    End With
End Sub
 
Phải là "C:\Temp\"
-------------
Trong module Sheet1 thay bằng
Mã:
Sub CommandButton1_Click()
     With Application.FileDialog(msoFileDialogFilePicker)
        .AllowMultiSelect = False
        .ButtonName = "Submit"
        .Title = "Select an image file"
        .Filters.Clear
        .Filters.Add "JPG", "*.JPG"
        .Filters.Add "JPEG File Interchange Format", "*.JPEG"
        .Filters.Add "Graphics Interchange Format", "*.GIF"
        .Filters.Add "Portable Network Graphics", "*.PNG"
        .Filters.Add "Tag Image File Format", "*.TIFF"
        .Filters.Add "All Pictures", "*.*"
   
        If .Show = -1 Then
            CommandButton1.Picture = LoadPicture(.SelectedItems(1))
        Else
            MsgBox ("Cancelled.")
        End If
    End With
End Sub
cảm ơn bác, có cách nào làm ảnh chèn vào nó full hết viền cái button ko bác?
 
cảm ơn bác, có cách nào làm ảnh chèn vào nó full hết viền cái button ko bác?
Tức ảnh nhỏ thì phóng to ra để phủ kín CommandButton?

Tôi chỉ biết cách từ ảnh nhỏ tạo ảnh lớn rồi chèn vào CommandButton. Nhưng trò đó không đáng "đồng tiền bát gạo".

Tại sao bạn muốn chèn ảnh vào CommandButton? Nếu chèn vào Image (cũng từ ActiveX Controls) thì có thể thiết lập Stretch.

À mà LoadPicture không chấp nhận PNG đâu. Vậy bỏ PNG đi.
 
Tức ảnh nhỏ thì phóng to ra để phủ kín CommandButton?

Tôi chỉ biết cách từ ảnh nhỏ tạo ảnh lớn rồi chèn vào CommandButton. Nhưng trò đó không đáng "đồng tiền bát gạo".

Tại sao bạn muốn chèn ảnh vào CommandButton? Nếu chèn vào Image (cũng từ ActiveX Controls) thì có thể thiết lập Stretch.

À mà LoadPicture không chấp nhận PNG đâu. Vậy bỏ PNG đi.
Nếu chèn vào Image (cũng từ ActiveX Controls) thì có thể thiết lập Stretch -> Em chưa hiểu lắm, thiết lập Stretch là ntn bác
 
Nếu chèn vào Image (cũng từ ActiveX Controls) thì có thể thiết lập Stretch -> Em chưa hiểu lắm, thiết lập Stretch là ntn bác
Nôm na thì ảnh như một miếng cao su hình chữ nhất. Nếu nhỏ hơn khung thì nó được kéo ra 2 chiều cho vừa khung. Hãy đặt Image: thẻ Developer -> menu Insert -> chọn Image từ Activex Controls -> chọn Properties (developer) -> chọn fmPictureSizeModeStretch cho thuộc tính PictureSizeMode.
 
Web KT

Bài viết mới nhất

Back
Top Bottom