Newsgroup: it.comp.appl.access
Titolo: Simulare pulsante su di un livello

Ciao a tutti, sto più o meno impazzendo nel costruire una stringa.
Ci ho messo tutto il mio impegno, ma ora son bloccato.
Vorrei che a fronte di un click del pulsante il valore del path di un
file contenuto in un controllo emulasse il pulsante di explorer su di
un livello e tornasse alla directory precedente.
In pratica da c:\pippo\pluto\ tornasse indietro a c:\pippo\ e
ovviamente se siamo arrivati a c:\ (o anche ad una radice della
directory di rete tipo s:\) si bloccasse.
Ho impostato cosi, ma è un po' macchinoso:
If right(Me.PathIniziale, 1) <> "\" Then
MsgBox "Attenzione indicare percorso valido", vbInformation, "Errore"
Me.PathIniziale.SetFocus
Exit Sub
End If
pathPrecedente = Me.PathIniziale
' misuro lunghezza pathiniziale
numeroCaratteri = Len(Me.PathIniziale)
Dim CaratteredaControllare As String
CaratteredaControllare = Me.PathIniziale
For i = 1 To numeroCaratteri
VerificaCarattere = right(CaratteredaControllare, 1)
Debug.Print VerificaCarattere
If VerificaCarattere = "\" Then
pathPrecedente = Left(PathIniziale, numeroCaratteri - i)
Debug.Print pathPrecedente
Exit For
End If
i = i + 1
CaratteredaControllare = Left(Me.PathIniziale, numeroCaratteri - i)
Next i
Me.PathIniziale = Left(PathIniziale, numeroCaratteri - i)
che dite c'è qualcosa di meno macchinoso?
Grazie e buon caldo.
m


Ciao Matteo,
mi sembra che nel tuo codice ti potrebbe aiutare <F1> "InstrRev".
Ma se ti capisco bene, basta anche:
ChDir (Me!PathIniziale)
ChDir ("..")
Me!PathIniziale = CurDir
Se nella tua applicazione disturba che il persorso corrente di Access
si cambia (temporaneamente - a causa del ChDir) puoi conservarlo
in una variabile e reimpostarlo alla fine del codice.
-- 
HTH
Karl
*********
Access FAQ: 
www.donkarl.com/it
 

m
Forse dico una bufala, ma non ti basta utilizzare instr(TuaStringa,"\") cominciando a leggere la casella da destra? Cosě hai la posizione della prima directory e cambi la lunghezza della casella tipo
TuaCasella.value = left(tuaCasella, ValoreTrovato)
-- 
Questo articolo e` stato inviato dal sito web 
http://www.nonsolonews.it

 m
Prova cosě
  pos = instrrev(path,"",len(path)-1)
  if pos > 0 then nuovo_percorso = left(path,pos)
Ciao, buone ferie!
Non vai in ferie? Ahiahiahiahiahiahi... peccato!
(Scusatemi, sono fuso, ho bisogno di farmi una nuotata al mare!)
-Marco-
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

   pos = instrrev(path,"",len(path)-1)
Forse nel post non è comparsa, ma io so che tu sai che tra i doppi apici
ci deve stare una barra traversa.
Ciao.


 questo articolo e` stato inviato via web dal servizio gratuitohttp://
www.newsland.it/newssegnala
 gli abusi ad 
ab...@newsland.it
Grazie marco, avevo visto anche la funzione di Karl che sembrava
funzionare ...
pare tu mi legga nel pensiero!
eh si dopo tanto tempo a sudare domani sera parto per Barcellona!!!!!
starò li fino a martedi ... speriamo di rilassarci e goderci la bella
città.
Attendo suggerimenti da chi ci è stato!

 Attendo suggerimenti da chi ci è stato!
Ci sono stato l'estate scorsa
Unico suggerimento: prenditi più giorni!!!
-- 
-- 
MAssimiliano Amendola
www.accessgroup.it
Cisa - Conferenza Italiana Sviluppatori Access


sei un tesoro ... ma se l'avessi potuto l'avessi fatto!
saperlo prima...
!


Ciccio, sallo
-- 
-- 
MAssimiliano Amendola
www.accessgroup.it
