Forum
ms-office.gr > Forum > Microsoft Office > Visual Basic for Applications (VBA) > [Access - VBA] Color Dialog COMDLG32.DLL στην Access

Visual Basic for Applications (VBA) Ερωτήσεις / Απαντήσεις σε σχέση με τη χρήση της VBA.

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 26-04-10, 11:39
Όνομα: Μίλτος
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 07-04-2010
Μηνύματα: 2
Προεπιλογή Color Dialog COMDLG32.DLL στην Access

Καλημέρα σας και συγχαρητήρια σε όλους που συνεισφέρουν σ αυτό το φόρουμ!
Προσπαθώ να εμφανίσω το διάλογο των Windows (Color Dialog) προκειμένου να
δώσω την επιλογή στους χρήστες μιας εφαρμογής Access να επιλέγουν το χρώμα φόντου
και γραμματοσειράς σε κάποια πεδία.
Βρήκα τον παρακάτω κώδικα σε σελίδα της Microsoft: How To Use Color Dialog from COMDLG32.DLL in VB and Access
Κώδικας:
  Option Explicit
 
   Private Type CHOOSECOLOR
     lStructSize As Long
     hwndOwner As Long
     hInstance As Long
     rgbResult As Long
     lpCustColors As String
     flags As Long
     lCustData As Long
     lpfnHook As Long
     lpTemplateName As String
   End Type
 
   Private Declare Function ChooseColorAPI Lib "comdlg32.dll" Alias _
     "ChooseColorA" (pChoosecolor As CHOOSECOLOR) As Long
 
   Dim CustomColors() As Byte
 
   Private Sub Command1_Click()
       Dim cc As CHOOSECOLOR
       Dim Custcolor(16) As Long
       Dim lReturn As Long
       cc.lStructSize = Len(cc)
       cc.hwndOwner = Me.hWnd
       cc.hInstance = 0
       cc.lpCustColors = StrConv(CustomColors, vbUnicode)
       cc.flags = 0
       lReturn = ChooseColorAPI(cc)
       If lReturn <> 0 Then
           Me.Caption = "RGB Value User Chose: " & Str$(cc.rgbResult)
           Me.BackColor = cc.rgbResult            ' Visual Basic only ****
           Me.Section(0).BackColor = cc.rgbResult ' Access only **********
           CustomColors = StrConv(cc.lpCustColors, vbFromUnicode)
       Else
           MsgBox "User chose the Cancel Button"
       End If
   End Sub
 
   Private Sub Form_Load()
       ReDim CustomColors(0 To 16 * 4 - 1) As Byte
       Dim i As Integer
 
       For i = LBound(CustomColors) To UBound(CustomColors)
           CustomColors(i) = 0
       Next i
   End Sub

Το πρόβλημα μου είναι:

1. πως μπορώ να εμφανίζω το παράθυρο του διάλογου αυτό στο κέντρο της φόρμας

2. Δεν δουλεύει σε Vista 64 bit και σε Windows7 64 bit.

Έχετε καμιά ιδέα;

Ευχαριστώ για το χρόνο σας.

Μίλτος
Απάντηση με παράθεση
  #2  
Παλιά 27-04-10, 13:25
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 1.157
Προεπιλογή

Γεια σας!
Αγαπητέ Μίλτο, καλωσόρισες στο φόρουμ!
Δε θα χρειαστεί να χρησιμοποιήσεις την βιβλιοθήκη comdlg32.dll.
Μπορείς να καλέσεις τον διάλογο επιλογής χρώματος από την ίδια την msaccess.exe
με το παρακάτω:
Κώδικας:
Declare Sub ChooseMyColor Lib "msaccess.exe" Alias "#53" (ByVal hWnd As Long, TheColor As Long)
Παράδειγμα χρήσης:

Κώδικας:
Private Sub cmdChooseColor_Click()
    Dim LngColor&
    LngColor = Me.Text1.BackColor 'Me.Text1.ForeColor
    ChooseMyColor Me.hWnd, LngColor
    Me.Text1.BackColor = LngColor
End Sub
Καλή συνέχεια

Φιλικά

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών σε VB.Net, Access, Excel, Outlook, Word

Τελευταία επεξεργασία από το χρήστη Tasos : 27-04-10 στις 22:43.
Απάντηση με παράθεση
  #3  
Παλιά 28-04-10, 22:31
Όνομα: Μίλτος
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 07-04-2010
Μηνύματα: 2
Προεπιλογή

Καλησπέρα σε όλους!

Φίλε Τάσο, αυτό ήταν!

Απλό, κατανοητό, κεντράρεται και δουλεύει παντού!

Σ ευχαριστώ πάρα πολύ για το χρόνο σου!

Με εκτίμηση

Μίλτος
Απάντηση με παράθεση
Απάντηση στο θέμα

Εργαλεία Θεμάτων
Τρόποι εμφάνισης

Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[ Ερωτήματα ] Index στην Access mdragon Access - Ερωτήσεις / Απαντήσεις 9 10-03-11 15:14
[ Συναρτήσεις ] Η Mod στην access xristos0718 Access - Ερωτήσεις / Απαντήσεις 4 22-03-10 14:17
[ Συναρτήσεις ] η VLOOKUP στην access xristos0718 Access - Ερωτήσεις / Απαντήσεις 4 03-03-10 08:23
log file στην access giorgos_ad Access - Ερωτήσεις / Απαντήσεις 5 28-02-10 11:37
[ Εκθέσεις ] Εκθέσεις στην access mike04 Access - Ερωτήσεις / Απαντήσεις 5 23-02-10 17:57


Η ώρα είναι 15:40.