Newsgroup: it.comp.appl.access
Titolo: Cambiare con VBA lo spessore bordo di una linea (Proprietà BorderWidth)

Access 2003
Ciao, sto utilizzando la seguente routine  inserita nella sezione corpo del 
report, evento stampa. Funziona perfettamente, l'unica cosa e che chea le 
linee con spessore sottile; ho provato ad aggiungere
la proprietà BorderWidth (Spessore bordo) dopo il Me.ForeColor = 0 ma non 
succede nulla, ho cercato in rete e nell'aiuto di access, ma pur avendo 
trovato l'argomento che parla di espressione , non sono riuscito a capirci 
nulla. Qualcuno sa aggiungere una riga di codice per poter rendere lo 
spessore della linea disegnata nel report più spessa (impostazione proprietà 
spessore linea a 2).
Mille grazie, Bruno
P.S... Sono proprio negato o è normale? Sto leggendo/Studiando VBA ma ci 
capisco sempre meno; non riesco a scrivere due righe di codice di sana 
pianta, mi sa che ci vuole un corso, cosa ne dite.
Private Sub Corpo_Print(Cancel As Integer, PrintCount As Integer)
Me.ScaleMode = 1
    Me.ForeColor = 0
    'Repeat the following line of code for each vertical line
    '1 * 1440 represents 1 inch.
    Me.Line (0 * 1440, 0)-(0 * 1440, 14400)
    Me.Line (1 * 1440, 0)-(1 * 1440, 14400)
    Me.Line (1.6 * 1440, 0)-(1.6 * 1440, 14400)
    Me.Line (2.2 * 1440, 0)-(2.2 * 1440, 14400)
    Me.Line (2.78 * 1440, 0)-(2.78 * 1440, 14400)
    Me.Line (4.3 * 1440, 0)-(4.3 * 1440, 14400)
    Me.Line (6.45 * 1440, 0)-(6.45 * 1440, 14400)
    Me.Line (8.41 * 1440, 0)-(8.41 * 1440, 14400)
    Me.Line (9 * 1440, 0)-(9 * 1440, 14400)
    Me.Line (9.59 * 1440, 0)-(9.59 * 1440, 14400)
    Me.Line (10.18 * 1440, 0)-(10.18 * 1440, 14400)
    'The 14400 is an arbitrary number to increase the line
    'to the max of a section.
End Sub 

 ha scritto nel messaggio 
news:497afdb3$0$1122$4faf...@reader2.news.tin.it...

Prima delle istruzioni Me.Line scrivi:
Me.DrawStyle = 0
Me.DrawWidth = 32
dove 32 sono i pixel di spessore della linea, che normalmente è impostata a 
1 pixel.
Mi permetto un suggerimento: dai più spesso un'occhiata alla guida...quasi 
sempre risolvi.
Ciao, Carlo 

Bruno - S95 ha scritto:

Se non sbaglio ForeColor è il colore Primo Piano, cioè del carattere contenuto nella casella. Il BorderWidth regola lo spessore del bordo....ma di che colore è il bordo? e lo SpecialEffect? xchè combinazioni di questi 3 valori danno risultati 'imprevisti'.....
-- 
Questo articolo e` stato inviato dal sito web 
http://www.nonsolonews.it

 ha scritto nel 
messaggio news:glf4an$f13$1...@tdi.cu.mi.it...

----------------
Grazie per l'aiuto Carlo, ed anche per il consiglio.
Ovviamente mi sento un pocchino imarazzato nel dover sempre chiedere; mi sa 
proprio che sono negatuccio visto che non so neanche cercare nell'Help,
Salvo quanto presente nel sito comune, ho cercato sia facendo F1 nell'evento 
stampa della sezione corpo del report, come scritto nel primo post, poi dopo 
aver navigato nell'help alla ricerca del lato oscuro  ho cercato anche in 
rete e in particolare  nel sito di supporto della Microsoft e su 
http://msdn.microsoft.com/en-us/library/aa223977(office.11).aspx
.
Mi pare, salvo minor attenzione da parte mia, di non aver trovato nulla di 
chiaro come da te rappresentato (aiuto per cui ti ringrazio tantissimo).
Per evitare di farmi venire i complessi, per cortesia mi puoi indicare in 
quale punto della quida hai trovato in maniera cos' chiara (magari con 
qualche esempio), diversamente sono punto e a capo.
Grazie ancora a te e a tutti coloro che danno supporto a chi ne sa poco come 
me.
Mi chiedevo... la maggior parte di voi sono dei professionisti nel campo o 
semplicemente appassionati, anche perchè ho visto rari vostro post di 
richiesta d'aiuto e se qualche volta ci sono, mi ci son perso nel capire.
Ciao, Bruno 

 ha scritto nel messaggio 
news:glf4gd$6of$1...@news.nonsolonews.it...

------------
Ciao, mi sa che anche tu ci capisci quanto me, forse ci capiamo a vicenda; 
gli altri parlano una lingua spaziale.
Hai ragione... nell'esempio che ho trovato, BorderColor non era inserita 
come riga di codice, probabilmente non è necessario se non vuoi un colore 
diverso dal nero che sicuramente, visto che funziona, lo da di default.
A proposito, quanto indicatomi gentilmente da Carlo costarella funziona alla 
grande, ma tu di che effetti speciali stai parlando, per quanto riguarda le 
tre combinazioni. Che mostro esce fuori dal tuo PC.
Ciao, Bruno 

 Ciao, Bruno
Ciao, Carlo 


In veritą cercavo solo la via + semplice......se i parametri che setti per un controllo sono 'contraddittori' Access fa quello che puņ.....a suo tempo mi ero impelagato anche io su queste formattazioni, ma basta capire la logica che le governa e sta tranquillo che problemi del genere non li avrai +....SpecialEffect č una proprietą per governare l'aspetto della casella (incassato, piatto....) e influisce sulle altre proprietą. Non č questione di mostri......anche se non ho capito xchč, se sei all'inizio, vuoi a tutti i costi disegnare da codice una linea...


 -- 
No, ho solo avuto la necessità di cheare delle linee verticali alte quanto 
il corpo, in quanto in un sottoreport, come nel mio caso, possono esserci 1 
come 2 o più record. Avevo quindi la necessità di incorniciare (tipo 
stampato) tutti i campi del report principale e sottoreport. Con il codice 
di cui sopra è andata alla grande.
Ciao, Bruno 

 ha scritto nel 
messaggio news:glfj0v$rq3$1...@tdi.cu.mi.it...

-----------
Carlo, grazie per le parole "esattamente quello che succederà a te." mi ha 
fatto molto piacere leggerle.
Hai scritto persino troppo per spiegarmi qualcosa sulla guida. Per una 
questione di puntiglio voglio fare di nuovo la ricerca per vedere cosa 
trovo.
Ancora mille grazie di cuore.
Bruno 

news:glfn87$h97$1...@news.nonsolonews,it ...

Benissimo allora!! L'importante è che funzioni :-)
-- 
Questo articolo e` stato inviato dal sito web 
http://www.nonsolonews.it

 -------
Grazie e scusa se ho pensato che fossi al mio livello di conoscenza di 
programmazione; ho male interpretato quanto hai scritto.
Il codice in questione, con l'aggiunta di Carlo Costarella funziona alla 
grande, purtroppo per me in quanto non ci sono riuscito, ho cercato a far 
riferimento al nome di una linea da me creata per aumentarne lo spessore in 
punti a mio piacimento, ma non ci sono riuscito affatto, pur avendo 
nuovamente navigato nell'help come consigliato da Carlo. Per me o per lo 
meno per una persona al mio livello l'help non sempre aiuta a capire con 
facilità, anche per mancanza di esempi, infatti in "Line e  BorderWidth " 
non riesco a capire come fare riferimento a quell'oggetto (linea) per 
poterne aumentare lo spessore a mio piacimento, amio piacimento perchè 1 pt 
è poco e 2 pt sono tanti per quello che serve a me.
Mille grazie, Bruno


Puoi impostare lo spessore a tuo piacimento tra 1 e 32767.
Me.DrawWidth = 1.5 non da errori ma non so se corretto.
Line non č un oggetto ma un metodo...come ben documentato nella guida:
"Il metodo Line consente di disegnare linee e rettangoli per un oggetto 
Report quando si verifica l'evento Stampa".
L'oggetto č il report.
Tradotto significa che quando scrivi Me.DrawWidth il "Me" č riferito 
all'oggetto Report e DrawWidth ad una sua proprietą
Il controllo (oggetto) Linea a cui applicare la proprietą BorderWidth č 
un'altra cosa. Questo oggetto č per esempio una linea che tracci in un 
report usando il controllo Linea che trovi nella casella degli strumenti.
Ciao, Carlo 

 Ciao, Carlo
-----------
Carletto, Carletto; che santa pazienza che hai, sia tu che gli altri con le 
tue capacità (spero di farne parte anche io un giorno a venire).
Ora mi è più chiaro il tutto; sono riuscito a utilizzare BorderWidth con la 
seguente sintassi "Me.MiaLinea.BorderWidth = 3"  ............e vai alla 
grande.
Mille grazie e buona continuazione della domenica
    Bruno 

Bruno - S95 ha scritto:

Ti assicuro che le mie conoscenze in fatto di Access e VBA non sono ASSOLUTAMENTE in grado di competere con i mostri sacri ed i senior del NG!!!!!!! Spero solo di poter dare il mio contributo ogni tanto (e anche un sacco di 'pataccate'!!!).....La mia riflessione riguardo a disegnare una line da codice erano solo riferite al fatto che a volte si può ottenere il risultato con minor sforzo.....per esempio se devo avere una linea verticale a fianco del record (un qualsivoglia numero), a volte, ma solo a volte, la disegno con la 'linea' del menu e stringo il corpo fino a farlo alto come la linea......all'aumentare dei record ho una linea verticale....cmq imparare ad usare l'help, internet ed il NG non è immediato.....a volte se uno non sa cosa cercare l'help può essere alquanto ostico!!!! Cmq persisti e non scoraggiarti!!! Qua tu, come me, troverai sempre un valido aiuto....


 ha scritto nel messaggio 
news:gli9lr$fhk$1...@news.nonsolonews.it...

Mille grazie e alla prossima.
Bruno