#HookLab - Tạo cửa sổ TaskPane / ActionPane bằng UserForm (1 người xem)

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

Người dùng đang xem chủ đề này

thaipv

XA Project
Tham gia
18/5/14
Bài viết
158
Được thích
243
Giới tính
Nam
Gửi tặng các bạn mã nguồn để tạo cửa sổ TaskPane / ActionPane (cửa sổ phụ) trong excel bằng UserForm.219359
Ghi chú : Cửa sổ con di chuyển trong phạm vi bên trong và di chuyển theo cửa sổ cha của nó.
+ Màu cam : Cửa sổ ông nội XLMAIN
+ Màu đỏ : Cửa sổ cha XLDESK
+ Màu tím : Cửa sổ con EXCEL7

Giải thuật vắn tắt :
1. Thiết lập UserFom làm (giả) TaskPane / ActionPane là con của cửa sổ XLDESK (con nuôi).
2. Sắp xếp lại vị trí của UserForm và EXCEL7 (con ruột) sao cho không đè lên nhau (UserForm có thể ở bên trái hoặc bên phải của EXCEL7...).
3. Mỗi khi cửa sổ cha XLDESK thay đổi vị trí hoặc kích thước thì cửa sổ con cũng thay đổi theo (và trở về mặc định). Vì vậy, ta cần đặt 1 hook bắt sự kiện này để UserForm và EXCEL7 định lại vị trí và kích thước theo đúng ý 2.
 

File đính kèm

UserFom làm (giả) TaskPane ..... không đẹp lắm .... nhưng khâm phục và ngưỡng mộ :D :D
 
Upvote 0
Không biết code VBA là do bác sở hữu và nắm bản quyền hay thế nào, nếu không thì "gửi tặng" là không hợp lí. Code thông qua WinAPI để thực hiện nên không ai cấp phép cả, mà cộng đồng được phép sử dụng theo chính sách của Microsoft.
Và các dòng chú thích tiếng Anh khá là "Anh", vậy nên chỉ có thể đăng là "chia sẻ code". Không biết bác có đồng ý không?
Và kỹ thuật code chưa hoàn chỉnh, sẽ làm ngưng tiến trình ứng dụng Excel đột ngột.
 
Lần chỉnh sửa cuối:
Upvote 0
Không biết code VBA là do bác sở hữu và nắm bản quyền hay thế nào, nếu không thì "gửi tặng" là không hợp lí. Code thông qua WinAPI để thực hiện nên không ai cấp phép cả, mà cộng đồng được phép sử dụng theo chính sách của Microsoft.
Và các dòng chú thích tiếng Anh khá là "Anh", vậy nên chỉ có thể đăng là "chia sẻ code". Không biết bác có đồng ý không?
Và kỹ thuật code chưa hoàn chỉnh, sẽ làm ngưng tiến trình ứng dụng Excel đột ngột.
Code này do tôi viết 100% (tất nhiên là ngoại trừ những API), các chú thích tiếng Anh cũng vậy.
 
Upvote 0
Tuy bác viết nhưng bác phải sở hữu theo luật sở hữu trí tuệ, thì code bác có thể nói là tặng, ở trường hợp này có lẽ là chia sẽ code.
 
Upvote 0
Gửi tặng các bạn mã nguồn để tạo cửa sổ TaskPane / ActionPane (cửa sổ phụ) trong excel bằng UserForm.View attachment 219359
Ghi chú : Cửa sổ con di chuyển trong phạm vi bên trong và di chuyển theo cửa sổ cha của nó.
+ Màu cam : Cửa sổ ông nội XLMAIN
+ Màu đỏ : Cửa sổ cha XLDESK
+ Màu tím : Cửa sổ con EXCEL7

Giải thuật vắn tắt :
1. Thiết lập UserFom làm (giả) TaskPane / ActionPane là con của cửa sổ XLDESK (con nuôi).
2. Sắp xếp lại vị trí của UserForm và EXCEL7 (con ruột) sao cho không đè lên nhau (UserForm có thể ở bên trái hoặc bên phải của EXCEL7...).
3. Mỗi khi cửa sổ cha XLDESK thay đổi vị trí hoặc kích thước thì cửa sổ con cũng thay đổi theo (và trở về mặc định). Vì vậy, ta cần đặt 1 hook bắt sự kiện này để UserForm và EXCEL7 định lại vị trí và kích thước theo đúng ý 2.
Đỉnh, cách của bạn rất hay. Tôi chỉnh chút code nhìn cũng rất chuyên nghiệp với cái giao diện TaskPanel này.
 
Upvote 0
Đỉnh, cách của bạn rất hay. Tôi chỉnh chút code nhìn cũng rất chuyên nghiệp với cái giao diện TaskPanel này.
Bạn cải tiến viết thêm chút ... !!!

VD: Túm cái Form keo thả vào 4 góc là nó vô đúng vị trí của nó ...vvv và khắc phục một số lỗi nữa là ok đấy :p:D
 
Upvote 0
Bạn cải tiến viết thêm chút ... !!!

VD: Túm cái Form keo thả vào 4 góc là nó vô đúng vị trí của nó ...vvv và khắc phục một số lỗi nữa là ok đấy :p:D
Mình cũng sửa lại để cái Form vừa lại với giao diện, di chuyển thì nhu cầu chỉ nằm bên trái hoặc bên phải thôi, còn khi sử dụng tạm thời chưa phát hiện nó bị lỗi gì, nếu bạn phát hiện chia sẻ cách khắc phục.
 
Upvote 0
Cách này cũng hay thật, phải chi biết sớm thì đỡ khổ hihihi
 
Upvote 0
Cái này với cái Listview anh
Mạnh cũng đang có ý định mò viết Add-Ins TaskPane trên Delphi ... mà lâu nay bận quá ko có thời gian mở Delphi lên coi ... lâu lâu ghé GPE chọc chọc vài dòng lướt qua vậy chứ có coi kỹ bài nào mô -0-0-0-
 
Upvote 0
Gửi tặng các bạn mã nguồn để tạo cửa sổ TaskPane / ActionPane (cửa sổ phụ) trong excel bằng UserForm.View attachment 219359
Ghi chú : Cửa sổ con di chuyển trong phạm vi bên trong và di chuyển theo cửa sổ cha của nó.
+ Màu cam : Cửa sổ ông nội XLMAIN
+ Màu đỏ : Cửa sổ cha XLDESK
+ Màu tím : Cửa sổ con EXCEL7

Giải thuật vắn tắt :
1. Thiết lập UserFom làm (giả) TaskPane / ActionPane là con của cửa sổ XLDESK (con nuôi).
2. Sắp xếp lại vị trí của UserForm và EXCEL7 (con ruột) sao cho không đè lên nhau (UserForm có thể ở bên trái hoặc bên phải của EXCEL7...).
3. Mỗi khi cửa sổ cha XLDESK thay đổi vị trí hoặc kích thước thì cửa sổ con cũng thay đổi theo (và trở về mặc định). Vì vậy, ta cần đặt 1 hook bắt sự kiện này để UserForm và EXCEL7 định lại vị trí và kích thước theo đúng ý 2.
nhấn vào có hiện form lên sau đó con trỏ xoay tầm 2s, rồi tự động tắt excel luôn bác ạ, không nhấn gì nữa cả
 
Upvote 0
Cai này còn phải bẩy lỗi nhiều hihihi
Bạn sửa lại để hoàn chỉnh luôn đi bạn, thật sự có nghiên cứu tới mấy cái API để xem lỗi chổ nào nhưng máy mình chạy nó không hề báo lỗi. Mà cái vụ API mình nghiền hoài nhưng vẫn không nuốc nổi, bó tay.
 
Upvote 0
Bạn sửa lại để hoàn chỉnh luôn đi bạn, thật sự có nghiên cứu tới mấy cái API để xem lỗi chổ nào nhưng máy mình chạy nó không hề báo lỗi. Mà cái vụ API mình nghiền hoài nhưng vẫn không nuốc nổi, bó tay.
hihihi em cũng đâu có rành môn API đâu :wallbash::wallbash: với lại máy tháng gần đây em có chút việc bận nên không ngồi máy lâu được nên đâu có mày mò code được, lâu lâu vô diễn đàn comment đỡ buồn./-*+//-*+//-*+/
 
Upvote 0
Đúng là có lỗi thật, khi mình thay đổi kích thước (Phóng to, di chuyển, đổi vị trí) của của sổ WorkBook một chút thì nó treo luôn excel. Ai khắc phục được hoàn thiện nó đi mọi người, bạn @thaipv khắc phục sản phẩm của mình xem sao.
 
Upvote 0
Đúng là có lỗi thật, khi mình thay đổi kích thước (Phóng to, di chuyển, đổi vị trí) của của sổ WorkBook một chút thì nó treo luôn excel. Ai khắc phục được hoàn thiện nó đi mọi người, bạn @thaipv khắc phục sản phẩm của mình xem sao.
TaskPane.PNG
Cập nhật :
+ Thiết kế, căn chỉnh lại frmTaskPane theo phong cách phẳng.
+ Chuyển code vào UserForm.
Các bạn tải về test thử nhé.
 

File đính kèm

Upvote 0
Mình thử xem thế n ào thì: excel stop working nhé.
excel 2013 64bit
 
Upvote 0
Upvote 0
Sao VBA nó ko hổ trợ TaskPanes mà mình cứ loanh quanh làm giả khổ quá nhỉ ===\.
thấy link sau nó có hướng dẫn mã chưa test ko biết là cho Excel hay Word nữa
Mới kiếm được sách xong thích khúc code nào copy cho nhanh trên File PDF úp cho ai iu em nó
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Code cũ của bạn trong mHooklab là:
Mã:
#If VBA7 Then
   ...
    Public Function xlDeskProc(ByVal hWnd As LongPtr, ByVal uMsg As Long, _
                               ByVal wParam As Long, ByVal lParam As Long) As LongPtr
        If WM_SIZE = uMsg Then
            Call frmTaskPane.SetLayout
        Else
            If 0 = lpPrevProc Then Call RecoverPointer(lpPrevProc, "lpPrevProc")
            If 0 <> lpPrevProc Then
                xlDeskProc = CallWindowProc(lpPrevProc, hWnd, uMsg, wParam, lParam)
            End If
        End If
    End Function
#Else
...
#End If

Trong môi trường 64-bit thì tham số LPARAM, WPARAM là số Long 8 byte vì thế hàm xlDeskProc bạn phải sửa lại kiểu của hai tham số này. Cần sửa lại như sau:

Mã:
#If VBA7 Then
   ...
    Public Function xlDeskProc(ByVal hWnd As LongPtr, ByVal uMsg As Long, _
                               ByVal wParam As LongPtr, ByVal lParam As LongPtr) As LongPtr
        If WM_SIZE = uMsg Then
            Call frmTaskPane.SetLayout
        Else
            If 0 = lpPrevProc Then Call RecoverPointer(lpPrevProc, "lpPrevProc")
            If 0 <> lpPrevProc Then
                xlDeskProc = CallWindowProc(lpPrevProc, hWnd, uMsg, wParam, lParam)
            End If
        End If
    End Function
#Else
...
#End If

Mình góp ý thêm là các khai báo hàm API của bạn nên sửa lại cho gọn, liên quan đến các hàm SetWindowLongPtrA, GetWindowLongPtrA
Mã:
    #If Win64 Then
        Public Declare PtrSafe Function SetWindowLongPtr Lib "user32" Alias "SetWindowLongPtrA" ( _
            ByVal hWnd As LongPtr, _
            ByVal nIndex As Long, _
            ByVal dwNewLong As LongPtr) As LongPtr
    #Else
        Public Declare PtrSafe Function SetWindowLongPtr Lib "user32" Alias "SetWindowLongA" ( _
            ByVal hWnd As LongPtr, _
            ByVal nIndex As Long, _
            ByVal dwNewLong As LongPtr) As LongPtr
    #End If

Sửa lại là
Mã:
    #If Win64 Then
        Public Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongPtrA" ( _
            ByVal hWnd As LongPtr, _
            ByVal nIndex As Long, _
            ByVal dwNewLong As LongPtr) As LongPtr
    #Else
        Public Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" ( _
            ByVal hWnd As LongPtr, _
            ByVal nIndex As Long, _
            ByVal dwNewLong As LongPtr) As LongPtr
    #End If

Khi đưa về một tên SetWindowLong thì sau này sử dụng nó bạn không phải điều hướng biên dịch #If VBA7 nữa thì code sẽ ngắn gọn hơn.
Trong các code liên quan tới điều hướng 32 và 64-bit chưa được gọn (phải viết lại nguyên một hàm). Chỉ nên điều hướng những dòng code , những khai báo có kiểu dữ liệu khác nhau, code bên trong Sub, Function nên đồng bộ cả 32 và 64 bit sau này bảo trì và nâng cấp thuận lợi hơn.

Dự án liên quan đến API - subclass trong VBA này còn nhiều gian nan lắm. Còn rất nhiều việc khác bạn phải nâng cấp nữa.
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Đúng cái mình cần, chỉ cần Add là sài. Cảm ơn bạn rất nhiều vì đã chia sẽ
 
Upvote 0
Thấy Bill nói trên Vb có vẻ đơn giản thế mà VBA nó không hổ trợ thấy buồn ... có cách nào lách xài không nhỉ
Code Của Bill
Mã:
Private myUserControl1 As MyUserControl
Private WithEvents myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane

Private Sub ThisAddIn_Startup(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Startup

    myUserControl1 = New MyUserControl()
    myCustomTaskPane = Me.CustomTaskPanes.Add(myUserControl1, "New Task Pane")

    With myCustomTaskPane
        .DockPosition = Office.MsoCTPDockPosition.msoCTPDockPositionFloating
        .Height = 500
        .Width = 500
        .DockPosition = Office.MsoCTPDockPosition.msoCTPDockPositionRight
        .Width = 300
        .Visible = True
    End With
End Sub
Mã:
[System.Runtime.InteropServices.Guid("c3a84bf1-e95b-4d23-952d-59e35673958e")]
public interface CustomTaskPaneCollection : 
IDisposable, System.Collections.Generic.IEnumerable<Microsoft.Office.Tools.CustomTaskPane>
 
Upvote 0
Thấy Bill nói trên Vb có vẻ đơn giản thế mà VBA nó không hổ trợ thấy buồn ... có cách nào lách xài không nhỉ
Code Của Bill
Mã:
Private myUserControl1 As MyUserControl
Private WithEvents myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane

Private Sub ThisAddIn_Startup(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Startup

    myUserControl1 = New MyUserControl()
    myCustomTaskPane = Me.CustomTaskPanes.Add(myUserControl1, "New Task Pane")

    With myCustomTaskPane
        .DockPosition = Office.MsoCTPDockPosition.msoCTPDockPositionFloating
        .Height = 500
        .Width = 500
        .DockPosition = Office.MsoCTPDockPosition.msoCTPDockPositionRight
        .Width = 300
        .Visible = True
    End With
End Sub
Mã:
[System.Runtime.InteropServices.Guid("c3a84bf1-e95b-4d23-952d-59e35673958e")]
public interface CustomTaskPaneCollection :
IDisposable, System.Collections.Generic.IEnumerable<Microsoft.Office.Tools.CustomTaskPane>
Dường như là không có cách nào tạo TaskPane theo cách 'chính thống' trong VBA được. Tài liệu bạn gửi ở bài #22 cũng yêu cầu 1 COM-Addin.
 
Upvote 0
Em CustomTaskPane ... Mạnh làm đang hình thành thai nghén ... khoe một tẹo he
Viết *.OCX luôn he :p
Vậy là trên GPE Mạnh là người thứ 2 Viết *.OCX CustomTaskPane sau sư Phụ @Nguyễn Duy Tuân .... Coder Đẳng Cấp đó he ;)
View attachment 228374

Đúng hướng rồi. Tham số myUserControl là Form ActiveX. Bạn chú ý sử dụng các thuộc tính Align hoặc Anchors để căn chỉnh các controls theo Form là ok đấy.
 
Upvote 0
Em CustomTaskPane ... Mạnh làm đang hình thành thai nghén ... khoe một tẹo he
Viết *.OCX luôn he :p
Vậy là trên GPE Mạnh là người thứ 2 Viết *.OCX CustomTaskPane sau sư Phụ @Nguyễn Duy Tuân .... Coder Đẳng Cấp đó he ;)
View attachment 228374
Anh number one :victory:

Chỉ em với hhihihi-=.,,

MỚI bắt đầu còn nhiều thứ lỗi lắm
anh viết bằng gì vậy ?
 
Upvote 0
Co và giản kéo và thả 4 góc Excel thoải mái... thấy tiện ích :p
Mỗi ngày điều chỉnh viết thêm vô một chút ... chơi mà học .... học mà chơi vậy mới vui khi mò ra một cái gì đó

Capture.JPG
 
Upvote 0
hihi nếu anh viết trên Delphi còn nhứt đầu nhiều lắm :wiggle:
 
Upvote 0
hihi nếu anh viết trên Delphi còn nhứt đầu nhiều lắm :wiggle:
Sư phụ lâu nay vẫn có và đang xài đó còn giả vờ hỏi sao ???!!!!

Nếu thích thì có thể tải cuốn sách bài #22 nghiên cứu là có thể làm được theo cách của Sư phụ he ;);)
 
Upvote 0
Sư phụ lâu nay vẫn có và đang xài đó còn giả vờ hỏi sao ???!!!!

Nếu thích thì có thể tải cuốn sách bài #22 nghiên cứu là có thể làm được theo cách của Sư phụ he ;);)
Lâu rồi em đâu có sài nó, nó còn lỗi gõ tiếng việt lâu lâu nó đơ đơ em chưa giải quyết được (có thể do em chưa biết làm)?
 
Upvote 0
:wallbash: Cực lắm :bye2:
Em có thử viết cái OCX mà nhắm không đủ sức làm nên thôi
View attachment 228455
Mạnh thấy VB6 cũng viết tốt có điều nó lỗi thời ko hổ trợ nữa và chỉ chạy trên nền tảng x32 ... còn x64 thì mạnh ko biết
không biết có cách nào viết *.OCX trên VB6 xong chuyển nó qua Delphi build x32_x64 được ko nhỉ ??? ( Vì mình có thể làm tốt trên VB6 còn Delphi thì thua)
 
Upvote 0
Mạnh thấy VB6 cũng viết tốt có điều nó lỗi thời ko hổ trợ nữa và chỉ chạy trên nền tảng x32 ... còn x64 thì mạnh ko biết
không biết có cách nào viết *.OCX trên VB6 xong chuyển nó qua Delphi build x32_x64 được ko nhỉ ??? ( Vì mình có thể làm tốt trên VB6 còn Delphi thì thua)
-+*/:''" Kiến thức em thì em bó tay anh ơi hông có đơn giản đâu viết thì có thể nó chạy đó mà nó chạy có ổn không thì không biết, lỗi tràn bộ nhớ v.v.v......
 
Upvote 0
-+*/:''" Kiến thức em thì em bó tay anh ơi hông có đơn giản đâu viết thì có thể nó chạy đó mà nó chạy có ổn không thì không biết, lỗi tràn bộ nhớ v.v.v......
quả thực là vậy mà tài liệu viết Task Pane trên VB6 + Delphi cực hiếm (trừ khi xài ké cái ADD-IN EXPRESS) còn lại ko thấy luôn ... còn c++/C# , VB.net thì đầy ra đó mà ít ai quan tâm
Mò Google lòi con mắt ra ko thấy luôn .... Cái cuốn sách bài #22 nó chỉ hướng dẫn có 1 nữa trong đó còn 1 nữa là thì chỉ có mò mới ra !!!!
mà 1 vài thư viện trên Windows10 nó lại ko hổ trợ

Vãi kinh luôn :p ;)
 
Upvote 0
quả thực là vậy mà tài liệu viết Task Pane trên VB6 + Delphi cực hiếm (trừ khi xài ké cái ADD-IN EXPRESS) còn lại ko thấy luôn ... còn c++/C# , VB.net thì đầy ra đó mà ít ai quan tâm
Mò Google lòi con mắt ra ko thấy luôn .... Cái cuốn sách bài #22 nó chỉ hướng dẫn có 1 nữa trong đó còn 1 nữa là thì chỉ có mò mới ra !!!!
mà 1 vài thư viện trên Windows10 nó lại ko hổ trợ

Vãi kinh luôn :p ;)
Máy cái này làm gì có ai chia sẻ anh. Người ta viết được đó mà không có ai chia sẻ đâu (@$%@. Nếu anh muốn làm thì nên Tự lực cánh sinh là chính
 
Upvote 0
Máy cái này làm gì có ai chia sẻ anh. Người ta viết được đó mà không có ai chia sẻ đâu (@$%@. Nếu anh muốn làm thì nên Tự lực cánh sinh là chính
Vậy chốt lại là sư phụ xài ké cái ADD-IN EXPRESS viết Task Pane chứ không phải tự tay viết ?!
Còn Mạnh lại tự tay mò ( Copy Của ai đó tí + ai đó 1 tẹo) xong tự tay viết he mà ko phải xài ké của ai đó .... vãi he -0-0-0-
 
Upvote 0
Chính xác là em đang sài ké (@$%@
Chắc quởn quởn bắt trước anh tập làm quá, gần cuối năm rồi, gần 20/11 nữa nhiều việc quá
 
Upvote 0
Upvote 0
Tùy mõi người, nếu muốn tiện thì nên sài Tool người ta viết sẵn cho tiện, vừa được vá lỗi, vừa được hướng dẫn nhưng....
Còn muốn trải nghiệm thì mày mò cho vui.
Thôi không nói chuyện nữa loãn Topic hết.
Vậy nha :::"""><
 
Upvote 0
Khoe 1 tẹo ... mò ra cái chìa khóa rùi thì cứ thế mà thêm code vào thui ;):p
Taskpane cho Word
Taskpane_Word.PNG
Taskpane cho Excel
Taskpane_Excel.PNG
Taskpane cho Access
Taskpane_Access.PNG
Làm chung 3 Em hay nhiều Em nó vào 1 *.OCX ... mở Excel , Access hay Word lên điều thấy các Em nó
Mò Tiếp chim view + Custom Ribbon nữa vậy là có cái Add-Ins link tinh trong đó .... hahahaha
 
Lần chỉnh sửa cuối:
Upvote 0
quả thực là vậy mà tài liệu viết Task Pane trên VB6 + Delphi cực hiếm (trừ khi xài ké cái ADD-IN EXPRESS) còn lại ko thấy luôn ... còn c++/C# , VB.net thì đầy ra đó mà ít ai quan tâm
Mò Google lòi con mắt ra ko thấy luôn .... Cái cuốn sách bài #22 nó chỉ hướng dẫn có 1 nữa trong đó còn 1 nữa là thì chỉ có mò mới ra !!!!
mà 1 vài thư viện trên Windows10 nó lại ko hổ trợ

Vãi kinh luôn :p ;)
cho e hỏi sách gì vậy a.
 
Upvote 0
cho e hỏi sách gì vậy a.
để viết được *.OCX Task Pane

1/ ít nhất bạn phải biết VB6 Or Tools khác
2/ Sách thì xem lại mấy bài trước
3/ trên GPE này sau 10 năm mới có người viết ra cái *.OCX Task Pane thứ 2 đấy ===> chứng tỏ 1 điều là khó đấy !?
4/ Cố giắng hãy tự thân thử sức xem ... kẹt quá thì xài lại của ai đó hay làm giả như chủ thớt vậy cho lẹ
5/ khi biết rồi thì thấy rất đơn giản ... tại ta chưa biết khai báo sử dụng mà thôi
....
...
Thử sức xem sao nha ... còn hướng dẫn thì chắc không bao giờ quá hãy để đấy sau 1 to 10 năm sau xem như thế nào thôi
 
Upvote 0
để viết được *.OCX Task Pane

1/ ít nhất bạn phải biết VB6 Or Tools khác
2/ Sách thì xem lại mấy bài trước
3/ trên GPE này sau 10 năm mới có người viết ra cái *.OCX Task Pane thứ 2 đấy ===> chứng tỏ 1 điều là khó đấy !?
4/ Cố giắng hãy tự thân thử sức xem ... kẹt quá thì xài lại của ai đó hay làm giả như chủ thớt vậy cho lẹ
5/ khi biết rồi thì thấy rất đơn giản ... tại ta chưa biết khai báo sử dụng mà thôi
....
...
Thử sức xem sao nha ... còn hướng dẫn thì chắc không bao giờ quá hãy để đấy sau 1 to 10 năm sau xem như thế nào thôi
Em thấy có người thứ 3 roi :
Liên kết: https://www.youtube.com/watch?v=p0zfWZZ8V1Y

Bài đã được tự động gộp:

để viết được *.OCX Task Pane

1/ ít nhất bạn phải biết VB6 Or Tools khác
2/ Sách thì xem lại mấy bài trước
3/ trên GPE này sau 10 năm mới có người viết ra cái *.OCX Task Pane thứ 2 đấy ===> chứng tỏ 1 điều là khó đấy !?
4/ Cố giắng hãy tự thân thử sức xem ... kẹt quá thì xài lại của ai đó hay làm giả như chủ thớt vậy cho lẹ
5/ khi biết rồi thì thấy rất đơn giản ... tại ta chưa biết khai báo sử dụng mà thôi
....
...
Thử sức xem sao nha ... còn hướng dẫn thì chắc không bao giờ quá hãy để đấy sau 1 to 10 năm sau xem như thế nào thôi
Và thấy có người thứ 4 (Quá ít) :
Liên kết: https://www.youtube.com/watch?v=A7q4FSbUVHM
 
Upvote 0
Lần chỉnh sửa cuối:
Upvote 0
Ôi dào code với trả két ... ngày ấy mò khoãng 2 tuần viết trên VB6 thì nó Show ra .....

1672386353938.png
bỏ diết mấy năm sau nó lại mới Show lại trên Delphi

1672386396810.png

Tôi Chỉ vào đây đánh dấu 1 chút như đại thánh bay trong lòng bàn tay phật tổ thôi :D
 
Lần chỉnh sửa cuối:
Upvote 0
1/ Mọi cái tôi làm cho sẳn rồi phần còn lại nếu thích khai báo sử dụng thôi

2/ Món đó không ai chỉ cả dù dì khả năng tự viết được nó rất ít kể cả bạn thấy đâu đó trên C# ..++++++++ thì cũng sử dụng của DNA hoặc

3/ Nó có trong cuốn sách tôi úp bài số 22 của chủ đề này tôi xem kỹ nó làm ra trong 1 tuần trên VB6 ... sau vài năm mới viết thành công trên Delphi


4/ Tôi mò từ đâu thì chỉ cho từ đó mà mò là ra thôi ... còn ra hay không phụ thuộc vào chính khả năng của bạn

5/ Nếu không thích cách Tôi bày thì hãy thử với ChatGPT tôi mới hỏi xong nó chỉ cả thảy 7 bước sau:

1.PNG2.PNG3.PNG4.PNG
 
Lần chỉnh sửa cuối:
Upvote 0

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

Back
Top Bottom