Hyperlink für Stichworte

Das Textverarbeitungsprogramm

Moderator: Moderatoren

15Albert
***
Beiträge: 64
Registriert: Mo, 27.03.2023 13:03

Hyperlink für Stichworte

Beitrag von 15Albert »

Hyperlink für Stichworte.
Es gibt einen Button für Hyperlink.
Der funktioniert ganz einfach dem Inhaltsverzeichnis.
Dort ist er einfach da ohne dass ich was machen muss.
Was muss ich machen um den Hyperlink auch bei den Stichworten zu generieren?

Ich habe noch von Zyklade irgendwas.
Der konnte aber wohl nicht mit BAS arbeiten.
Das könnte ich noch hochladen.
Albert.
15Albert
***
Beiträge: 64
Registriert: Mo, 27.03.2023 13:03

Re: Hyperlink für Stichworte

Beitrag von 15Albert »

Ich bekomme eine Nachricht ohne wirklich Antwort,
Warum?
Albert
quotsi
******
Beiträge: 693
Registriert: Do, 14.11.2013 10:04

Re: Hyperlink für Stichworte

Beitrag von quotsi »

(Ich bin oder war Zyklade, aber ich kann mich nicht erinnern, dass ich einen erfolgreichen Beitrag zu diesem Wunsch geschrieben haben soll)
Tatsache ist, dass die Möglichkeit zum Hyperlink (zumindest bei LO, was ich derzeit bevorzuge) nur für das Inhaltsverzeichnis gegeben ist.
Habe soeben experimentiert, aber auch keine schnelle Lösung für das Stichwortverzeichnis gefunden.
Man müßte schauen, ob man an der Mustervorlage für die Einträge der Stichworte was ändern kann...

Mein Beitrag bezüglich Stichwortverzeichnis war, wie man aus einem konventionellen Stichwortverzeichnis die Daten gewinnen kann, um sie in eine Konkordanzdatei zu überführen, die man einfacher bearbeiten und dann später als Grundlage für ein neues Stichwortverzeichnis verwenden kann . Diesen Geistesblitz habe ich in diesem Forum unter der Abteilung Wissensarchiv hinterlegt.
win11 - Avira - LO 7.5.8.2 (X86_64) - AOO 4.1.14
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
15Albert
***
Beiträge: 64
Registriert: Mo, 27.03.2023 13:03

Re: Hyperlink für Stichworte

Beitrag von 15Albert »

Hallo Quosti,
das hat schon in etwa funktioniert.
War aber nach meiner Ansicht sehr kompliziert.
Was mir fehlt ist eine Bas, so dass das in einem Zuge abläuft.
Ich schicke dir mal was ich noch habe.
Ich wäre Dir sehr dankbar, wenn Du das im obigen sinne fertig machtest.
Wenn das ein hoher Aufwand ist, dann meldet dich privat.
Ich kann dir auch das Muster schicken.
Ich kenne auch deinen Klarnamen, den werde ich hier nicht bekannt geben.
Albert
Dateianhänge
Libre_Makro_Bas_Zyklade.zip
(3.43 KiB) 52-mal heruntergeladen
quotsi
******
Beiträge: 693
Registriert: Do, 14.11.2013 10:04

Re: Hyperlink für Stichworte

Beitrag von quotsi »

Ja, das ist von mir. Aber das betrifft genau die Stichwortsuche, um eine Konkordanzdatei zu erstellen, was ja auch aus der Namensgebung der 4 eingepackten Makros hervorgeht. Genau das Problem und der Weg zur Lösung wird in der von mir zitierten Quelle beschrieben.
Aber da wird kein Weg beschrieben, wie man "Hyperlinks" für jede Seite einzeln (!) und gezielt erhält.
Und leider geht mein Weg auch zusehens abwärts, wie bei allen. Vielleicht interessiert sich ein jüngerer hier im Forum für das Ziel.
Gruß
win11 - Avira - LO 7.5.8.2 (X86_64) - AOO 4.1.14
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
15Albert
***
Beiträge: 64
Registriert: Mo, 27.03.2023 13:03

Re: Hyperlink für Stichworte

Beitrag von 15Albert »

Hallo Qosti,
ich schicke dir mal meine Datei.
Albert
Dateianhänge
nur_Stichworte.odt
(74.85 KiB) 53-mal heruntergeladen
mikeleb
*******
Beiträge: 1316
Registriert: Fr, 09.12.2011 16:50

Re: Hyperlink für Stichworte

Beitrag von mikeleb »

Hallo,
hier viewtopic.php?t=71553 findet sich ein Makro für dieses Problem.
Gruß,
mikeleb
quotsi
******
Beiträge: 693
Registriert: Do, 14.11.2013 10:04

Re: Hyperlink für Stichworte

Beitrag von quotsi »

Vielleicht können Mondblatt24 oder andere Experten helfen. Ich kann es leider nicht, bin stets nur interessierter Laie auf dem Computer-Gebiet gewesen, mein Feld war die Chirurgie...
win11 - Avira - LO 7.5.8.2 (X86_64) - AOO 4.1.14
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
quotsi
******
Beiträge: 693
Registriert: Do, 14.11.2013 10:04

Re: Hyperlink für Stichworte

Beitrag von quotsi »

Ja, das Leben ist schon interessant! Ich wollte mich an der Frage, ob das Makro unter LO auch läuft, versuchen. Natürlich nicht!
Dann sucht man nach Ursachen und probiert es an AOO. Aber auch da läuft es in meinem Fall nicht!
Dann ist man frustriert, aber kann das nicht einsehen. Erst jetzt habe ich den Link zu der Diskussionsrunde genutzt und detailiert gelesen. Abgesehen von irgendwelchen Verzögerungen steht da doch eindeutig, dass das Makro nur zuschlägt, wenn es sich um Stichworte im Fließtext handelt !!!

Ich hatte auf die Schnelle (bin ja kein Schriftsteller, haha) eine Datei genommen, von der ich wußte, dass sie ein Stichwortregister hat, nämlich eine Küchenrezeptsammlung, wo jedes "Rezept" die genaue Beschreibung beinhaltet, was man braucht und wie man die Speise/den Kuchen/die Mahlzeit zubereitet. Natürlich waren das jeweils Abschnitte und da waren doch hauptsächlich die Überschriften von Interesse, sowohl für ein Inhaltsverzeichnis, als auch für ein alphabetisches Register (=Stichwortverzeichnis). ABER DA SIND die STICHWORTE NICHT IM FLIESSTEXT !!!
So kann es einem ergehen, wenn das "Kleingedruckte" nicht groß am Anfang steht.

Ob ich so viel Willen habe, mal zu sehen, ob man da noch was verbessern kann, und das nötige Wissen dazu? Ich weiß es nicht.
win11 - Avira - LO 7.5.8.2 (X86_64) - AOO 4.1.14
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
quotsi
******
Beiträge: 693
Registriert: Do, 14.11.2013 10:04

Re: Hyperlink für Stichworte

Beitrag von quotsi »

Ich bin mir völlig unsicher. Wenn ich das vorgeschlagene/verlinkte Makro einbaue, dann sind die DIM Zeilen doch außerhalb (vor dem sub) und wie kann man denn den Anfang sauber definieren?
win11 - Avira - LO 7.5.8.2 (X86_64) - AOO 4.1.14
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
15Albert
***
Beiträge: 64
Registriert: Mo, 27.03.2023 13:03

Re: Hyperlink für Stichworte

Beitrag von 15Albert »

Hallo Quosti,
meien bekannter, der ist leider verstoben.
Der hatte mir gesagt, es müssten die anhängenden oxt installiert werden.
Die hänge ich an.

Du hattest geschrieben die Hyperlink müsten im Fließtext sein.
Die Ausganzpunkt sind natürlich der Fließtext
Die ich Dir gschickt habe sind im Vrzeichnis ganz unten.
Leider ist der gesamte Text so groß, dass der nicht angenommen wrd.
Wenn Du mir noch mal deine private Mailadresse schickst nach discipuli@netcologne.de
Deine war so komisch irgand wie mit Zypern oder so.
Dann könnte ich Dir auf diesem Wege schicken.
In dem Text steckt nichts Geheimes.
Albert
Dateianhänge
MRI-1.3.3.oxt
(169.23 KiB) 46-mal heruntergeladen
basicidetools-1.2.0.oxt
(167.06 KiB) 45-mal heruntergeladen
basicaddonbuilder-0.5.2.oxt
(228.04 KiB) 48-mal heruntergeladen
Activ_Menü.oxt
(15.13 KiB) 44-mal heruntergeladen
quotsi
******
Beiträge: 693
Registriert: Do, 14.11.2013 10:04

Re: Hyperlink für Stichworte

Beitrag von quotsi »

->15Albert
Wozu soll man die 4 verschiedenen oxt. installieren? Was sollen die jeweils bewirken?

Hat denn bei dir das von mikeleb verlinkte Makro deinen Wunsch einer Seitenverlinkung im Stichwortverzeichnis (zumindest für im Fließtext positionierten Stichwörtern) funktioniert?
win11 - Avira - LO 7.5.8.2 (X86_64) - AOO 4.1.14
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
mikeleb
*******
Beiträge: 1316
Registriert: Fr, 09.12.2011 16:50

Re: Hyperlink für Stichworte

Beitrag von mikeleb »

Hallo,
da mich das Thema gereizt hat und ich nebenbei mal wieder einiges über Verzeichnisse und die Durchforstung eines Dokuments gelernt habe, habe ich das ursprüngliche Makro be- und umgearbeitet.
Wichtig dabei ist, dass das Stichwortverzeichnis korrekt erstellt ist. Bei größeren Dokumenten geht kein Weg an einer Konkordanzdatei vorbei.
Beim Erstellen der Querverweise/Links im Stichwortverzeichnis bin ich einen etwas anderen Weg gegangen:
1. Alle Stichwörter im Text bekommen ein Lesezeichen mit einem gewissen Präfix ("x_") um sie von ggf. vorhandenen anderen Lesezeichen zu unterscheiden.
2. Diese (alten) Lesezeichen werden zu Beginn des Makros gelöscht. Anschließend erhalten alle Stichworteinträge ein neues Lesezeichen. Alle diese Lesezeichen merke ich mir in einem Array (es erschien mir so am sinnvollsten, um nicht später ständig neu alles durchsuchen zu müssen)
Nun geht es die Bearbeitung des Verzeichnisses. Ein Verzeichniseintrag könnte so aussehen:
Arbeit....5, 9, 15, 18ff., 24, 28f., 34f., 40, 46
Die Punkte .... stehen für eine Tabulator, der zwingend existieren muss (ohne kann ich mir ein solches Verzeichnis auch nicht vorstellen)
3. Die Seitenzahlen werden entfernt und dann Schritt für Schritt durch Querverweise auf diese Seite ersetzt. Wenn ein Stichwort mehrmals auf einer Seite vorhanden ist, wird der Querverweis auf das erste Auftreten gesetzt (dazu habe ich mir im Array nicht nur die Seite, sondern auch die Position gemerkt, die nun ausgewertet werden, um das richtige Lesezeichen zu finden).
Das Gleiche gilt bei so etwas wie 18ff. bzw. 34f. Hier wird der Querverweis auf das erste Auftreten gesetzt.
4. Das Makro funktioniert auch, wenn die Zusammenfassung von Einträgen per "-" anstelle von "f., ff." erfolgt. Ist die Option "Zusammenfassen gleicher Einträge" nicht gewählt, macht das Makro nichts (die variante ist noch nicht implementiert).

Code: Alles auswählen

public warten_dialog as object
public abbruch_durch_benutzer 'kennzeichnet das Benutzer manuell abgebrochen hat
public raus 'beendet Hauptschleife Do-Loop

Const praefix="x_" 'Präfix für die Stichwortlesezeichen, zur Unterscheidung ggf. anderer Lesezeichen

Sub verweise_setzen()
	'Originalautor: www.jm-schmidt.de
	'be- und umgearbeitet im  April 2023
	
	startzeit = time()
	fehler_log = ""
	abbruch_durch_benutzer = 0
	raus = 0
	rueck = 0

	rueck = Msgbox("Wollen Sie die Einträge im Stichwortverzeichnis verlinken? " & _
		CHR(13) & CHR(13) & "ACHTUNG das Stichwortverzeichnis muss unmittelbar vor " & _
		"dem Start des Makros hier, aktualisiert worden sein. Ansonsten klicken Sie bitte ab ""Abbrechen"" " & _
		" und aktualisieren das Stichwortverzeichnis und starten Sie danach das Makro neu." & CHR(13) & " ", 33, "Stichwortverzeichnis bearbeiten")
	
	If Not(rueck = 1) Then Exit Sub

	oDoc=ThisComponent
	cur = oDoc.Text.createTextCursor
	oViewCursor = oDoc.CurrentController.getViewCursor
	indexes = ThisComponent.getDocumentIndexes()
	For i = 0 To Indexes.getCount() - 1
		oIndex = Indexes.getByIndex(i)
		If oIndex.supportsService("com.sun.star.text.DocumentIndex") Then
		If oIndex.UseCombinedEntries then
			erstelle_dialog
			warten_dialog.setVisible(True)
			warten_dialog.getControl("warten1").Text = "alte Lesezeichen werden gelöscht ..."

			'Alle ursprünglichen Lesezeichen entfernen
			oMarks=ThisComponent.Bookmarks
			for k=oMarks.count-1 to 0 step -1
				oMark=oMarks.getbyindex(k)
				if left(oMark.Name,len(praefix))=praefix then
					oMark.anchor.getText().removeTextContent(oMark)
				end if
			next

			'Alle Stichwortvorkommen im Dokument einlesen und Lesezeichen setzen
			oindex=odoc.documentindexes(1)
			Dim aStichworte(ubound(oindex.documentindexmarks))
			for n_sw=0 to ubound(aStichworte)
				warten_dialog.getControl("warten1").Text = "Stichwörter werden eingelesen, Lesezeichen gesetzt ... " & n_sw+1 & " von " & ubound(aStichworte)+1
				oMark=oindex.DocumentIndexMarks(n_sw)
				'zur Textstelle gehen
				oViewCursor.gotoRange(oMark.anchor, false)
				aStichworte(n_sw)=DimArray(4)
				aStichworte(n_sw)(0)=oMark.markEntry & oMark.anchor.string			'Text des Eintrages
				aStichworte(n_sw)(1)=oViewCursor.getpage							'Seite des Vorkommens
				aStichworte(n_sw)(2)=oviewcursor.position.x							'Position des Vorkommens
				aStichworte(n_sw)(3)=oviewcursor.position.y				
				aStichworte(n_sw)(4)=praefix & aStichworte(n_sw)(0) & "-" & n_sw	'Name des Lesezeichens
				'Lesezeichen erstellen
				oBookmark = ThisComponent.createInstance("com.sun.star.text.Bookmark")
		      	oBookmark.setName(aStichworte(n_sw)(4))
		      	ocurtmp=oViewcursor.Text.createTextCursor
		      	ocurtmp.gotoRange(oMark.anchor, false)
		      	oViewCursor.Text.insertTextContent(ocurtmp, oBookmark, False)
			next

			warten_dialog.getControl("warten1").Text ="Querverweise werden erstellt ..."

			
			cur.gotoRange(oIndex.getAnchor, false)
			cur.CollapseToStart 'vorderste Position im Verzeichnis
	
			'Anzahl Einträge ermitteln
			anzahl_eintraege = 0
			Do
				IF cur.ParaStyleName = oIndex.ParaStyleLevel1 OR cur.ParaStyleName = oIndex.ParaStyleLevel2 OR cur.ParaStyleName = oIndex.ParaStyleLevel3 Then 
						anzahl_eintraege = anzahl_eintraege + 1
				Elseif cur.ParaStyleName <> oIndex.ParaStyleHeading AND cur.ParaStyleName <> oIndex.ParaStyleSeparator Then
						Exit Do
				End If
				cur.GotoNextParagraph(False)
			Loop	
			
			cur.gotoRange(oIndex.getAnchor, false)
			cur.CollapseToStart

			dd = 0
			
			Do While raus = 0 and dd<anzahl_eintraege
				
				cur.GotoEndOfParagraph(False)
				'Verzeichniseintrag?
				IF cur.ParaStyleName = oIndex.ParaStyleLevel1 OR cur.ParaStyleName = oIndex.ParaStyleLevel2 OR cur.ParaStyleName = oIndex.ParaStyleLevel3 Then
						dd = dd + 1
						warten_dialog.getControl("warten1").Text ="Querverweise werden erstellt ... " & dd & " von " & anzahl_eintraege
						
						cur.GotoStartOfParagraph(False)
						cur.GotoEndOfParagraph(True)
						'Auslesen des gesamten Eintrags in Array tmp()
						'der Eintrag muss folgende Struktur haben: Eintrag#Tabulator#Seiten
						tmp = Split(cur.String, CHR(9)) 'es wird das Vorhandensein eines Tabulators je Eintrag vorausgesetzt

						'Finden aller Lesezeichen zu diesem Eintrag, sortiert
						sEintrag=tmp(0)

						n=-1
						for z=0 to ubound(aStichworte)
							warten_dialog.getControl("warten3").Text = sEintrag
							if aStichworte(z)(0)=sEintrag then
								n=n+1
								ReDim preserve aEintrag(n)
								aEintrag(n)=aStichworte(z)
								tausch=1
								k=n-1
								do while tausch=1 and k>-1
									if (aEintrag(k+1)(3)>aEintrag(k)(3)) or (aEintrag(k+1)(3)=aEintrag(k)(3) and aEintrag(k+1)(2)>aEintrag(k)(2)) then
										tausch=0
									else 
										swp=aEintrag(k)
										aEintrag(k)=aEintrag(k+1)
										aEintrag(k+1)=swp
									end if
									k=k-1
								loop
							end if
						next
 
						'Auslesen der ggf. mehreren Seitenzahlen
						tmp2 = Split(tmp(1), ", ")

						'.UseCombinedEntries ?
						'.UsesDash ? .UsePP ? 
						'es können drei Fälle auftreten (.UsesCombinedEntries=True und .UsesDash=False und .UsePP=True):
						'	45		Stichwort nur auf der Seite
						'	45f.	Stichwort auf der Seite und der folgenden
						'	45ff.	Stichwort auf der Seite und den folgenden
						'der Link wird, in diesem Beispiel, immer nur zum Stichwort auf Seite 45 führen - ein Link zu mehreren Zielen ist nicht möglich
						
						'es können zwei Fälle auftreten (.UsesCombinedEntries=True und .UsesDash=True und .UsePP=False):
						'	45		Stichwort nur auf der Seite 45
						'	45-47	Stichwort auf der Seite 45 bis einschließlich Seite 46
						'
						
						'wenn .UsesCombinedEntries=False oder .UsesDash=False und .UsePP=False, dann gibt es zu jedem Eintrag eine Liste nur einzelner Seiten
						'der Fall muss nicht extra betrechtet werden
						
						iF oIndex.UsePP then
							sTrenner="f"
						else
							sTrenner="-"
						end if								
						
						'aktuelle Zeile im Verzeichnis
						cur.GotoStartOfParagraph(False)
						'lösche alles hinter dem Tabulator
						cur.goRight(LEN(tmp(0))+1, False)
						cur.GotoEndOfParagraph(True)
						cur.String = ""
						
						'Aufspalten einer Seitennumer mit ggf. f. oder ff.
						tmp3=split(tmp2(0),sTrenner)
						'die Seitenzahl weg
						nseite=val(tmp3(0)) 
						
						tmp3(0)=""
						'neuer Text ohne Seitenzahl
						neu=join(tmp3,sTrenner)
						'Suche das Lesezeichen auf der richtigen Seite
						nr=0
						do until aEintrag(nr)(1)=nseite or nr=ubound(aEintrag)
							nr=nr+1
						loop
						'msgbox nr
						if aEintrag(nr)(1)=nseite then 'Lesezeichen auf der Seite existiert
							oReference = ThisComponent.createInstance("com.sun.star.text.textfield.GetReference")
							oReference.SourceName = aEintrag(nr)(4)
							oReference.SequenceNumber = 0
							oReference.ReferenceFieldPart = com.sun.star.text.ReferenceFieldPart.PAGE
							oReference.ReferenceFieldSource = com.sun.star.text.ReferenceFieldSource.BOOKMARK
							oDoc.getText.insertTextContent(cur, oReference, False)
							cur.GotoEndOfParagraph(False)
						else							'Lesezeichen nicht vorhanden
							cur.String = nSeite
							cur.collapsetoend
						end if
						cur.String = neu
						cur.collapsetoend
						'falls noch mehr Seiten zu dem Eintrag	
						for j=1 to ubound(tmp2)
							cur.String = ", "
							cur.collapsetoend
							tmp3=split(tmp2(j),sTrenner)
							nseite=val(tmp3(0))
							tmp3(0)=""
							neu=join(tmp3,sTrenner)
							do until aEintrag(nr)(1)=nseite or nr=ubound(aEintrag)
								nr=nr+1
							loop
							'msgbox nr
							if aEintrag(nr)(1)=nseite then 'Lesezeichen auf der Seite existiert, Querverweis setzen
								oReference = ThisComponent.createInstance("com.sun.star.text.textfield.GetReference")
								oReference.SourceName = aEintrag(nr)(4)
								oReference.SequenceNumber = 0
								oReference.ReferenceFieldPart = com.sun.star.text.ReferenceFieldPart.PAGE
								oReference.ReferenceFieldSource = com.sun.star.text.ReferenceFieldSource.BOOKMARK
								oDoc.getText.insertTextContent(cur, oReference, False)
								cur.GotoEndOfParagraph(False)
							else							'Lesezeichen nicht vorhanden, es wird der ursprüngliche Text gesetzt
								cur.String =nSeite
								cur.collapsetoend
							end if
							cur.String = neu
							cur.collapsetoend
						next
				end if
				cur.GotoNextParagraph(False)
			loop
			oviewcursor.gotoRange(oIndex.getAnchor, false)
			oviewcursor.collapsetostart
		end if
		end if
	next
	
	ThisComponent.getTextfields.refresh()
	
	warten_dialog.setVisible(False)
	
	If abbruch_durch_benutzer = 1 Then
			Msgbox "Bearbeitet wurden " & dd & " Einträge."  & CHR(13) & CHR(13) & "Start: " & startzeit & CHR(13) & _
		"Ende: " & time() & CHR(13) & CHR(13), 16, "Abbruch durch Benutzer"  
		Else
			Msgbox "Bearbeitet wurden " & dd & " Einträge."  & CHR(13) & CHR(13) & "Start: " & startzeit & CHR(13) & _
		"Ende: " & time() & CHR(13) & CHR(13), 64, "Fertig"
	End If
	
	
	
	
	
End Sub	


Sub erstelle_dialog

			'warten-Dialog--------------------------
			warten_model = CreateUnoService("com.sun.star.awt.UnoControlDialogModel")
			warten_model.setPropertyValue("Width",  200) '343
			warten_model.setPropertyValue("Height", 65) '65
			warten_model.SetPropertyValue("Title","Bitte etwas Geduld")
		
			oMod_warten = warten_model.createInstance("com.sun.star.awt.UnoControlFixedTextModel")
			With oMod_warten
				.setPropertyValue("Name","warten1")
				.setPropertyValue("PositionX",5) '192
				.setPropertyValue("PositionY",5) 
				.setPropertyValue("Width",180)
				.setPropertyValue("Height",15)
				.setPropertyValue("MultiLine", True)
				.setPropertyValue("Label","")
			End With
			warten_model.insertByName("warten1", oMod_warten)

			oMod_warten2 = warten_model.createInstance("com.sun.star.awt.UnoControlButtonModel")
			With oMod_warten2
				.setPropertyValue("Name","but1")
				.setPropertyValue("PositionX",70)
				.setPropertyValue("PositionY",45) '45
				.setPropertyValue("Width",60)
				.setPropertyValue("Height",16)
				.setPropertyValue("Label", "Stop")
				.setPropertyValue("DefaultButton", True)
				'.setPropertyValue("Enabled", False)
			End With
			warten_model.insertByName("but1", oMod_warten2)
			
			oListbut = createUnoListener("butlist_","com.sun.star.awt.XActionListener")
			
			oMod_warten3 = warten_model.createInstance("com.sun.star.awt.UnoControlFixedTextModel")
			With oMod_warten3
				.setPropertyValue("Name","warten3")
				.setPropertyValue("PositionX",5) '192
				.setPropertyValue("PositionY",20) 
				.setPropertyValue("Width",180)
				.setPropertyValue("Height",15)
				.setPropertyValue("MultiLine", True)
				.setPropertyValue("Label","")
			End With
			warten_model.insertByName("warten3", oMod_warten3)
			 
			warten_dialog = CreateUnoService("com.sun.star.awt.UnoControlDialog")
			warten_dialog.setModel(warten_model)
			
			warten_dialog.getControl("but1").addActionListener(oListbut)
			
			oWin2 = CreateUnoService("com.sun.star.awt.Toolkit")
			warten_dialog.createPeer(oWin2, null)


End Sub

Sub butlist_ActionPerformed()
	abbruch_durch_benutzer = 1
	raus = 1
End Sub

Meine ersten Test sehen ganz vernünftig aus, aber man weiß ja nie ...
Zumindestens werden Stichwörter auch in Tabellen, Bildbeschriftungen, Überschriften korrekt verarbeitet. Bitte gern weiter testen und Erfahrungen teilen.
Gruß,
mikeleb
15Albert
***
Beiträge: 64
Registriert: Mo, 27.03.2023 13:03

Re: Hyperlink für Stichworte

Beitrag von 15Albert »

Hallo,
Quosti,
ich bekomme das makro nicht zum Laufen.
Die 4 Otx, von denen weis ich nicht wozu die gehören.
Ich ernnere mich nur dass fao, so hieß der wohl, mir die instslliert hat.

Albert
15Albert
***
Beiträge: 64
Registriert: Mo, 27.03.2023 13:03

Re: Hyperlink für Stichworte

Beitrag von 15Albert »

Hallo Mikeleb,
Ist es unverschämt, wenn ich Dich bitte das für mich zu machen?
Als Buchautor bin ich da doch zimlich hilflos.
Albert
Antworten