#1 Mon 23 July 2007 16:11
- ninikkhuet
- Participant occasionnel
- Date d'inscription: 13 Jun 2007
- Messages: 20
[Mapx 5.0 + VB 6] customiser les images bitmap
Bonjour,
dans le code suivant :
Code:
' Define style of bitmap symbol With styl .SymbolType = miSymbolTypeBitmap .SymbolBitmapSize = 12 .SymbolBitmapTransparent = True .SymbolBitmapName = "Glob1-32.bmp" End With Set FF = Map1.FeatureFactory Dim pt As New Point Dim ftrSymbol As Feature pt.Set X1, Y1 Set ftrSymbol = lyr.AddFeature(FF.CreateSymbol(pt, styl)) ftrSymbol.Update
j'aimerais personnaliser l'image bitmap. Le problème est que j'ai vu que l'image bitmap en question doit être dans le répertoire CUSTSYMB de MapInfo/MapX. Mon appli et MapInfo s'installant séparément, je ne vois pas comment je peux faire pour avoir une image personnalisée, si quelqu'un a déjà eu ce problème ...
Merci
Hors ligne
#2 Tue 24 July 2007 10:20
- toulousig
- Participant actif
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 50
Re: [Mapx 5.0 + VB 6] customiser les images bitmap
Bonjour,
Lors de la procédure d'installation de ton appli MapX, tu n'as qu'à ajouter la copie de ton image personnalisée dans le répertoire CUSTSYMB.
Hors ligne
#3 Tue 24 July 2007 15:03
- ninikkhuet
- Participant occasionnel
- Date d'inscription: 13 Jun 2007
- Messages: 20
Re: [Mapx 5.0 + VB 6] customiser les images bitmap
Bonjour,
Lors de la procédure d'installation de ton appli MapX, tu n'as qu'à ajouter la copie de ton image personnalisée dans le répertoire CUSTSYMB.
à la main ? bof..
Hors ligne
#4 Tue 24 July 2007 18:18
- Damien BEAUSEIGNEUR
- Participant assidu
- Lieu: meyzieu
- Date d'inscription: 5 Sep 2005
- Messages: 425
Re: [Mapx 5.0 + VB 6] customiser les images bitmap
Bonjour
Une solution serait que que le logiciel d'installation puisse installer directement, le fichier dans le répertoire concerné.
Note: cela doit pouvoir ce faire avec un fichier zip, ou un qui t'installera directement le fichier au bon endroit.
Au delà ...
Hors ligne
#5 Wed 25 July 2007 15:14
- toulousig
- Participant actif
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 50
Re: [Mapx 5.0 + VB 6] customiser les images bitmap
toulousig a écrit:Bonjour,
Lors de la procédure d'installation de ton appli MapX, tu n'as qu'à ajouter la copie de ton image personnalisée dans le répertoire CUSTSYMB.
à la main ? bof..
Bien sûr que non pas à la main !
Si tu as un setup ou un exe pour l'installation de l'appli, tu peux ajouter un .bat qui copie cette image dans le répertoire.
Dernière modification par toulousig (Wed 25 July 2007 15:14)
Hors ligne
#6 Thu 26 July 2007 08:58
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3197
- Site web
Re: [Mapx 5.0 + VB 6] customiser les images bitmap
Bonjour,
Au vu du titre : "+VB6".
Je suppose que vous installez un exe créé sous VB6.
Il suffit de tester en début de programme (sur MDIForm1_Load par exemple) que le répertoire existe et y copier le fichier (au besoin créer le rep) , fichier qui aura été installé par défaut dans le répertoire de votre appli. (il suffit pour cela de le définir à l'empactage).
Pour écrire le bout de code je vous livre ci-dessous mon propre module de classe VB6 de gestion de fichier.
Salutations
Christophe
Code:
'******************************* ' ********* ' Diana2DCarto.vbp ' ' 'Module de classe 'Nomfichier ' 2004-2005 ' Normalisation : Septembre 2005 ' Author : Christophe Vergon : Diana2D.dev '******************************* ' ' Purpose : "NomFichier" manage of file by name ' ' Descritif : Gestion des fichiers par leur nom ' '***************************************** 'Do not use without author agreement 'Ne pas utiliser sans l'accord de l'auteur 'Diana2D.dev CopyRights 2005 '***************************************** Option Explicit Private mChemin As String Private mNom As String Private mNomComplet As String Private mDateCreation As String Private mextention As String * 3 Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long Public Property Get Chemin() As String Chemin = mChemin End Property Public Property Let Chemin(ByVal vNewValue As String) If vNewValue <> "" Then If Mid$(vNewValue, Len(vNewValue), 1) <> "\" Then vNewValue = vNewValue & "\" End If End If mChemin = vNewValue End Property Public Property Get nomfichier() As String nomfichier = mNom End Property Public Property Let nomfichier(ByVal vNewValue As String) mNom = vNewValue End Property Public Property Get extention() As String extention = mextention End Property Public Property Let extention(ByVal vNewValue As String) mextention = vNewValue End Property Public Function existe() As Boolean On Error Resume Next existe = ((GetAttr(mChemin & mNom & "." & mextention) And vbDirectory) = 0) On Error GoTo 0 End Function Public Function CheminExiste() As Boolean On Error Resume Next CheminExiste = ((GetAttr(mChemin) And vbDirectory) = 16) On Error GoTo 0 End Function Public Function CreateChemin() MkDir mChemin End Function Public Sub renomme(NewName As String) Name mChemin & mNom & "." & mextention As mChemin & NewName & "." & mextention End Sub Public Sub deplace(newpath As String) If Mid$(newpath, Len(newpath), 1) <> "\" Then newpath = newpath & "\" End If Name mChemin & mNom & "." & mextention As newpath & mNom & "." & mextention End Sub Public Sub Copie(newcompletename As String) Dim oldname As String Dim dummy& oldname = mChemin & mNom & "." & mextention Err.clear On Error Resume Next dummy& = CopyFile(oldname, newcompletename, 0) If Err.Number <> 0 Then MsgBox ("Erreur Copie Fichier" & Str(Err.Number)) End If End Sub Public Sub CopieEtRenomme(NewName As String, ext As String) Dim oldname As String Dim newcompletename As String On Error GoTo CopieEtRenomme_Error oldname = mChemin & mNom & "." & mextention newcompletename = mChemin & NewName & "." & ext FileCopy oldname, newcompletename On Error GoTo 0 Exit Sub CopieEtRenomme_Error: MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure CopieEtRenomme of Module de classe Nomfichier" End Sub Public Sub efface() Dim n As String n = mChemin & mNom & "." & mextention Kill (n) End Sub Public Sub ReplaceSpace() Dim i& Dim a$ Dim b$ b$ = "" For i& = 1 To Len(mNom) a$ = Mid$(mNom, i&, 1) If a$ = " " Then a$ = "_" b$ = b$ & a$ Next i& mNom = b$ End Sub Public Property Get nomcomplet() As String nomcomplet = mChemin & mNom & "." & mextention End Property Public Property Get DateCreation() As String If existe Then mDateCreation = FileDateTime(nomcomplet) Else mDateCreation = "*" End If DateCreation = mDateCreation End Property
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#7 Fri 27 July 2007 16:45
- ninikkhuet
- Participant occasionnel
- Date d'inscription: 13 Jun 2007
- Messages: 20
Re: [Mapx 5.0 + VB 6] customiser les images bitmap
bonjour,
merci pour toutes ces réponses, je n'en attendais pas tant :-)
Hors ligne