#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.Updatej'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: 3224
- 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 PropertyChristophe
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


