🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.os.ms-windows.winnt
Article #286153

Re: [ot] open office - jak otrzymac numer linii na ktorej jest kursor

#286153
From: 1634Racine
Date: Wed, 04 Dec 2024 21:57
70 lines
4287 bytes
Arkadiusz 'Black Fox' Artyszuk w news:viqdtl.b7s.1@blackfox.org
[...................]
> Można to zdaje się zrobić poprzez protezę w postaci makra, ale to nie 
> będzie na belce edytora. Taka funkcjonalność czeka na wprowadzenie do OO 
> już od kilkunastu lat. Zgodnie ze źródłem 
> https://forum.openoffice.org/en/forum/viewtopic.php?t=10528 makro może 
> mieć postać:
> Sub GetCursorColumn
> on error goto hr
> vc = thiscomponent.currentcontroller.viewcursor
> vc.gotoStartOfLine(true)
> lenst= len(vc.string)
> vc.collapsetoend
> msgbox "Column: " & lenst
> hr:
> End Sub

byc moze dochodzimy do sedna sprawy. Przed wrzuceniem tutaj tematu zapyt. AI 
gemini o stosowne makro, pytalem lepiej/gorzej, ale o: cyfrowy znacznik 
miejsca kursora na dole dokumentu w Apache OpenOffice, aby na dolnej belce 
był widoczny numer pionowej linii na ktorej jest kursor. Dostalem kod w 
basicu i na tym zakonczylem dzialalnosc, bowiem rozkraczylem sie juz na 
czynnosci implementacji makra (chociaz niby wiadomo, narzedzia -> makra -> 
...), wiec nie mam pojecia czy to w ogole dziala:

Sub AktualizujNumerLinii
    Dim oDoc As Object
    Dim oCursor As Object
    Dim iLine As Integer

    oDoc = ThisComponent
    oCursor = oDoc.CurrentController.Selection.getByIndex(0).Start
    iLine = oCursor.Paragraph.Start

    ' Zmień "Pole1" na nazwę Twojego pola
    oDoc.Text.Find("Pole1").String = "Linia: " & iLine
End Sub

                 z wytlumaczeniem od gemini:

Jak działa makro:

  1.. Zmienna oDoc: Przechowuje referencję do aktualnie otwartego dokumentu.
  2.. Zmienna oCursor: Przechowuje informacje o pozycji kursora.
  3.. Zmienna iLine: Przechowuje numer linii, na której znajduje się kursor.
  4.. Pętla:
    a.. oDoc.Text.Find("Pole1").String: Znajduje pole o nazwie "Pole1" i 
zmienia jego zawartość.
    b.. "Linia: " & iLine: Łączy tekst "Linia: " z numerem linii i 
przypisuje go do pola.
Tworzenie pola:

  1.. Wstawienie pola: W miejscu, gdzie chcesz wyświetlać numer linii, wstaw 
pole. Możesz to zrobić ręcznie lub używając menu Wstaw -> Pole.
  2.. Nadanie nazwy: Właściwości pola zmień nazwę na "Pole1" (lub dowolną 
inną, pamiętając o użyciu tej samej nazwy w makru).
Instalacja makra:

  1.. Otwórz okno makr: Przejdź do menu Narzędzia -> Makra -> Organizator 
makr.
  2.. Utwórz nowy moduł: W oknie organizatora makr utwórz nowy moduł (np. 
"MojeMakra").
  3.. Wklej kod: Wklej powyższy kod do utworzonego modułu.
  4.. Przypisanie do przycisku (opcjonalnie): Możesz przypisać makro do 
przycisku na pasku narzędzi, aby łatwiej je uruchamiać.
Automatyczne uruchamianie makra:

Aby makro działało automatycznie przy każdej zmianie pozycji kursora, można 
spróbować użyć zdarzeń w OpenOffice Basic. Jednak implementacja tego 
rozwiązania może być bardziej złożona i wymagać głębszej znajomości języka.
Technical Details
Message-ID: <viqj99$utp$1@news.chmurka.net>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.chmurka.net!.POSTED.088156141021.dynamic-2-waw-k-3-1-0.vectranet.pl!not-for-mail
References: <viloaj$ir3$1@news.chmurka.net> <vim8eu$vdp$1@news.chmurka.net> <vimjs9.5uc.1@blackfox.org> <vimpq1$eut$1@news.chmurka.net> <viqdtl.b7s.1@blackfox.org>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.chmurka.net!.POSTED.088156141021.dynamic-2-waw-k-3-1-0.vectranet.pl!not-for-mail
From: "1634Racine" <mnjfmr@j.cbqebml>
Newsgroups: pl.comp.os.ms-windows.winnt
Subject: Re: [ot] open office - jak otrzymac numer linii na ktorej jest kursor
Date: Wed, 4 Dec 2024 22:57:47 +0100
Organization: Malaguena Salerosa
Lines: 77
Message-ID: <viqj99$utp$1@news.chmurka.net>
References: <viloaj$ir3$1@news.chmurka.net> <vim8eu$vdp$1@news.chmurka.net> <vimjs9.5uc.1@blackfox.org> <vimpq1$eut$1@news.chmurka.net> <viqdtl.b7s.1@blackfox.org>
MIME-Version: 1.0
Injection-Date: Wed, 4 Dec 2024 21:58:01 -0000 (UTC)
Injection-Info: news.chmurka.net; posting-account="ladida"; posting-host="088156141021.dynamic-2-waw-k-3-1-0.vectranet.pl:88.156.141.21"; logging-data="31673"; mail-complaints-to="abuse-news.(at).chmurka.net"
Cancel-Lock: sha1:5BEV1S2VDb19WYWhn/QlWL7b2eQ= sha256:NA4G8eg0fY76pXQHNDWz7lT0FvXDdBuk9WAQKZYIxV8= sha1:xeB/492DYGRMKWyP9g3TCAWlE6w= sha256:t6UZR8bdmjBqkEoxiloSi41TQgVIKcU86tmB/VLMRFA=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Tosenevrati v4.05
X-MimeOLE: Produced by Havranek Co.
X-Organization: Malaguena Salerosa
X-Operating-System: You know, babe, posready
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit