OO Calc: oldalbeállítás megváltoztatása a munkalapról kezdeményezve

Az oldalbeállítás elérése különbözik a Writerben és a Calcban. A Calc minden munkafüzetlaphoz rendel egy oldalbeállítást, így ezek eléréséhez először a munkafüzetlapot kell elérni.

A példa egy Címlap nevű munkalapon (sheet) lévő cbxLL nevű jelölőnégyzetet (checkbox) használ a lábléc nyomtatásának be és kikapcsolásához.

sub LablecBeKi
    dim oDoc
as object
    dim oForm as object
    dim oSheet as object
    dim oCheckbox as object
    dim oPageStyle as object
    oDoc = ThisComponent
    oSheet =  oDoc.Sheets.getByName("Címlap")
    oForm = oSheet.DrawPage.Forms.getByIndex(0)
    oCheckbox = oForm.getByName("cbxLL")
    oPageStyle = oDoc.StyleFamilies.getByName("PageStyles").getByName("TAB_Címlap")
    oPageStyle.FooterOn = oCheckbox.State
end sub

A munkalap megszerzése után meg kell szerezni a vezérlőelemet tartalmazó Ürlap objektumot, ami a DrawPage objektumon belül a 0. form lekérésével történik. Ez természetesen feltételezi, hogy a munkalapon az alapértelmezett ürlapra (azaz semmi különöset nem téve) helyeztem el a jelölőnégyzetet. Ezután az ürlapon név alapján keresem meg a jelölőnégyzetet.

Az Oldalbeállítás egy stílus, így azt a dokumentum stílusait tartalmazó StyleFamilies listából név szerint az oldalstílusokat, majd ismét név szerint az alapértelmezés szerint elnevezett konkrét lapstílust kérem. Végül a lábléc megjelenését összekötöm a jelölőnégyzet állapotával.

A jelölőnégyzet helyi menüjéből a vezérlés pontot választva, majd az Események fülön az Elem állapota változott eseményhez rendeltem a LablecBeKi makrót.

Advertisements

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s