Pagina 1 di 1

[RISOLTO] gestire prorietà size e position di un oggetto

Inviato: lunedì 8 giugno 2015, 9:18
da ottaviane
salve a tutti.
ho difficoltà a trovare un elenco completo delle proprietà dei button.
mi spiego meglio.
ho questo codice:

Codice: Seleziona tutto

Sheet=ThisComponent.Sheets.getByName("GestioneMese")
   Form=Sheet.DrawPage.Forms.getByIndex(0)
   Button = Form.GetByName("Pulsante01")
   n=Button.Label
   msgBox("Label="+n)
   n=Button.PositionY
   msgBox("Posy="+n)

e mi da errore alla penultima riga .
qual'è la giusta modalità per ricavarne laposizione?
ciao

Re: accedere alle prorietà di un oggetto

Inviato: lunedì 8 giugno 2015, 12:46
da patel

Codice: Seleziona tutto

Sub PosizionePulsanti()

	Dim oDoc As Object, oSheet As Object, g as Object, c As Integer
	Dim s As new com.sun.star.awt.Size, gp As new com.sun.star.awt.Point      
	oDoc = ThisComponent
	oSheet = oDoc.CurrentController.ActiveSheet
	c = oSheet.DrawPage.count
	for b = 1 to c
	  g = oSheet.DrawPage(b-1)
      s = g.getSize()
	  gp = g.getPosition()
 	  print gp.x
	  print gp.y
	next
End Sub

Re: accedere alle prorietà di un oggetto

Inviato: lunedì 8 giugno 2015, 13:44
da vladboscaneanu
Ti consiglio di usare Xray, cerca su google Xray OpenOffice.Se proprio ni,
fai un print di button.dbg_methods() ,cosi usciranno tutti i metodi.
Spero che sono stato utile.

Re: accedere alle prorietà di un oggetto

Inviato: lunedì 8 giugno 2015, 13:46
da ottaviane
grazie mille.
e per conoscere la posizione in coordinate grafiche di una cella?
per esempio la cella B3 che x e y ha graficamente parlando?

saluti.

Re: accedere alle prorietà di un oggetto

Inviato: lunedì 8 giugno 2015, 14:57
da patel

Codice: Seleziona tutto

Sub cellapos
Sheet = ThisComponent.Sheets(0)
oCell = Sheet.getCellRangeByName("B3")
aPos = oCell.Position
cellax = aPos.X
cellay = aPos.Y
W = oCell.Size.Width
H = oCell.Size.Height
end sub 

Re: accedere alle prorietà di un oggetto

Inviato: lunedì 8 giugno 2015, 16:39
da ottaviane
waw :lol:
eccezionale. grazie 1000 :bravo:

Re: accedere alle prorietà di un oggetto

Inviato: lunedì 8 giugno 2015, 17:03
da ottaviane
patel ha scritto:

Codice: Seleziona tutto

Sub PosizionePulsanti()

	Dim oDoc As Object, oSheet As Object, g as Object, c As Integer
	Dim s As new com.sun.star.awt.Size, gp As new com.sun.star.awt.Point      
	oDoc = ThisComponent
	oSheet = oDoc.CurrentController.ActiveSheet
	c = oSheet.DrawPage.count
	for b = 1 to c
	  g = oSheet.DrawPage(b-1)
      s = g.getSize()
	  gp = g.getPosition()
 	  print gp.x
	  print gp.y
	next
End Sub
ultima cosa: e se volessi cambiare la posizione degli oggetti?
ho provato a fare

Codice: Seleziona tutto

gp.x=33 ...
ma la posizione non varia. Come si fa?
ciao

Re: [RISOLTO] accedere alle prorietà di un oggetto

Inviato: lunedì 8 giugno 2015, 20:42
da patel
prova il file allegato

Re: [RISOLTO] accedere alle prorietà di un oggetto

Inviato: lunedì 8 giugno 2015, 21:00
da charlie
@ottaviane,
se hai messo [Risolto] perché continui a fare nuove domande?

Re: [RISOLTO] accedere alle prorietà di un oggetto

Inviato: martedì 9 giugno 2015, 8:45
da ottaviane
scusa,
ho messo risolto perchè il problema è stato risolto. :knock:
Il fatto è che avevo inviato io stesso la soluzione che grazie a voi tutti
abbiamo trovato, ma non so perchè non è andata a buon fine.
Comunque ho risolto usando la funzione setposition(gp).
ciao e sempre grazie
:super:

Re: accedere alle prorietà di un oggetto

Inviato: martedì 9 giugno 2015, 8:51
da charlie
Ciao, il tag [Risolto] non è definitivo, lo puoi sempre togliere. Ma la discussione deve continuare sullo stesso argomento, altrimenti è necessario aprirne una nuova, magari con un link di riferimento. :D