[gelöst]Seitenformat ändern

Das Textverarbeitungsprogramm

Moderator: Moderatoren

Benutzeravatar
miesepeter
********
Beiträge: 2110
Registriert: Sa, 10.05.2008 15:05
Wohnort: Bayern

Re: Seitenformat ändern

Beitrag von miesepeter »

@Stephan
Bei mir funktioniert die Rotation unter AOO 4.1.2.

Was nicht geht, ist über das Tool das Bild zu drehen und anschließend zu beschneiden. Dann bricht AOO ab. Siehe meinen Workaround von oben.

Ciao
phoenix66
****
Beiträge: 126
Registriert: Sa, 28.10.2006 08:22
Wohnort: 07548 Gera

Re: Seitenformat ändern

Beitrag von phoenix66 »

vielen Dank an alle fleißigen Helfer.
Ich konnte mein Problem auch ohne Bild(Tabelle)und-Seitenrotation lösen und das Gesamtdokument mit einem Druckbefehl ausdrucken. Dennoch sind mir eure Tipps und Ratschläge wichtig, weil ich sie in Zukunft brauchen könnte. Im Schriftverkehr mit Behörden und den nichtinternetfähigen Vereinsmitgliedern braucht man soetwas. Für mich ist deshalb der komfportable Umgang mit den Writer wichtig.

Gruß phoenix66
AMD A4-4020 3200Mhz, 1 Kern, 8 GB RAM, 1 TB HDD
BS Linuxmint-19.1 cinnamon 64bit; Win 7 prof. 64bit SP 1
Vivaldi, DSL 6000, LAN
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Seitenformat ändern

Beitrag von Stephan »

Was nicht geht, ist über das Tool das Bild zu drehen und anschließend zu beschneiden. Dann bricht AOO ab. Siehe meinen Workaround von oben.
ich habe den Thread hier nicht im Detail verfolgt, mir fiel nur der ftp-Link zu Heise auf denn inzwischen kenne ich die 2 Links zu den 2 Extensions von Thomas (hier im Forum "Toxitom") aus dem Gedächtnis heraus.

Bitte also mir ggf. Nachricht geben ob etwas an der Extension nicht richtig funktioniert oder ob es um eine Funktion geht die in der Extension garnicht enthalten ist. Im ersteren Falle könnte man den Fehler korrigieren im zweiteren Falle vielleicht die Extension ändern/erweitern (vielleicht weil ich nicht vorher automatisch weiß ob das technisch überhaupt möglich ist in Bezug auf die gewünschte Änderung)


aber das ist alles natürlich nicht zwingend, ich wollte nur Hilfe anbieten zu einem Problem wo ich den Autor einer Extension persönlich kenne und wahrscheinlich ein gutes Wort für schnelle Korrektur einlegen kann.


Gruß
Stephan
phoenix66
****
Beiträge: 126
Registriert: Sa, 28.10.2006 08:22
Wohnort: 07548 Gera

Re: [gelöst]Seitenformat ändern

Beitrag von phoenix66 »

ich habe versucht nach euren Vorschlägen so eine Tabelle als Bild zu öffnen, um an die eigenschaften heranzukommen. Der Screenshot zeigt, daß mit Rechtsklick nur die gesamte Seite markiert werden kann und nicht die enthaltene Tabelle. Demzufolge wird nur das Kontextmenü sichtbar.

Gruß phoenix66

P.S. das Anhängen des verkleinerten screenshots klappt nicht.
AMD A4-4020 3200Mhz, 1 Kern, 8 GB RAM, 1 TB HDD
BS Linuxmint-19.1 cinnamon 64bit; Win 7 prof. 64bit SP 1
Vivaldi, DSL 6000, LAN
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: [gelöst]Seitenformat ändern

Beitrag von Stephan »

1. Anlauf
Bild markieren, in die IDE gewechselt, Makro gestartet.
Geht nicht, weil CurrentSelection nun in der IDE liegt und nicht auf dem Bild in Writer.
Tschuldigung, aber ich bin jetzt einmal genau, weil das vielleicht auch einmal beim Programmierverständnis hilft.

.CurrentSelection allein legt nicht fest um welche Selection es geht, sondern es gibt:

Code: Alles auswählen

ThisComponent.getCurrentSElection
und

Code: Alles auswählen

StarDesktop.CurrentComponent.getCurrentSelection
und Beide verhalten sich teils unterschiedlich weil StarDesktop.CurrentComponent immer die aktuell sichtbare Komponente von OO meint, ThisComponent hingegen die letztaktuelle Komponente bzw. das letztaktuelle Dokument (die nicht unbedingt die Sichtbare sein muss) aus Sicht des Makros.

z.B. siehe auch:
http://www.starbasicfaq.de/Worinbesteht ... hisCo.html

"letztaktuelle Komponente bzw. das letztaktuelle Dokument"?
Naja, ich bin nicht ganz entschlossen welche Formulierung hier richtig ist, denn OO versteht in diesem Zusammenhang _z.B._ auch Hilfe-Seiten als Dokumente (sofern ich mich recht erinnere).
Praktisch dürfte wohl "letztaktuelle Dokument" die richtige Formulierung sein, man sollte aber 'Komponente' immer im Hinterkopf haben.

Mit StarDesktop.CurrentComponent kann es eigentlich keine Verständnisprobleme geben, mit ThisComponent gibt es gelegentlich Welche z.B. dann wenn man ein Makro mit dem Bezug auf ein Dokument beginnt, im Verlaufe des Makros jedoch ein anderes Dokument das Aktuelle wird, tz.B. weil man ein Neues öffnet oder insbesondere ein altes schließt.


Bei dem in der Rede stehenden Code der Extension wird aber ThisComponent verwendet:

Code: Alles auswählen

Sub WT_BildDrehen
  dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
  oDoc = thisComponent
  oSel = oDoc.getCurrentSelection
'...
weswegen es kein Problem geben sollte und ich offen gesagt das von Dir hier genannte Problem:

"Geht nicht, weil CurrentSelection nun in der IDE liegt ..."

auch beim praktischen Testen nicht nachvollziehen kann.


Gruß
Stephan
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: [gelöst]Seitenformat ändern

Beitrag von Stephan »

Um es gleich vorwegzunehmen, ich finde die Extension sehr, sehr nützlich.
Und bedanke mich bei Thomas Krumbein für diese Leistung und den Lerneffekt den ich
daraus ziehen kann. Nachfolgendes ist auch keine Meckerei, ich liste lediglich Auffälligkeiten
mit dem Umgang von OO-Basic auf, mit der Bitte um Verständnis wenn ich mich mal nicht korrekt ausdrücke.
Du hast nichts falsch gemacht (im Sinne das Du unhöflich oder geringschätzig gewesen wärst) und es ist ziemlich überflüssig das Du das alles hier schreibst, nicht um meinetwillen und ich bin sicher das Thomas das auch so sieht (ich kenne Thomas seit ca. 10 Jahren persönlich).
Nun ist es mir während meiner Experimente passiert, dass plötzlich die Basic-IDE das aktuelle Fenster war.


Ja das passiert wohl gelegentlich. Leider habe ich (wieder einmal) kein reproduzierbares Beispiel zur Hand, weil das Ganze selten quasi grundlos passiert und wenn es bei mir selbst auftritt ich mir nie die Situation merke.

Ganze im Ernst: bitte glaube mir momentan ohne Beleg das solche Fälle auftreten, ich kann das im Moment nicht durch ein Beispiel untermauern.

Diese Fälle sind aber quasi Fehler in OO, denn sie gehorchen nicht dem bereits Gesagten, das durch Öffnen und Schließen von Dokumenten der Bezug (nachvollziehbar und richtig) wechselt.
IDE öffnen, Cursor in die Routine WT_BilldDrehen stellen und ausführen.
Falsche Routine!
Naja, OO ist nicht MS Office und es ist in OO nicht möglich das zu startende Makro dadurch festzulegen das man vor dem Starten den Cursor in den Code des Makrois platziert.
In OO startet bei Klick auf die entsprechende Schaltfläche in der Symbolleiste immer das erste Makro des Moduls.

Den Cursor hatte ich aber in den Code WT_BildDrehen gesetzt.
Hier eröffnet sich ein neues Thema!
Frage:
Warum stoppt die Abarbeitung des Codes nicht bei >>End Sub<< der Routine >>WT_BilldDrehen<< und verlässt das Modul?
Weil WT_BildDrehen in Wahrheit nie gestartet wurde, sondern das erste Makro des Moduls.(?) Also:

Code: Alles auswählen

sub TK_debug
  WT_BildBeschneiden
  'WT_WriterBildBeschneiden
end sub

Rufe ich den Code über meine Makro-Menüleiste auf klappt alles wunderbar!
Ich haben Deinen kompletten post gelesen und hoffe nichts übersehen zu haben, nur meiner Meinung nach ist das ganze Problem dadurch verursacht das Du glaubst das das Makro startet in welchem der Cursor steht, was aber überhaupt nicht stattfindet, sondern es startet das Makro TK_debug was dann sofort das Makro WT_BildBeschneiden aufruft.


Gruß
Stephan
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: [gelöst]Seitenformat ändern

Beitrag von Stephan »

diese Aussage habe ich per Tests gerade wiederlegt:
Das ist ja nun ein Riesenmissverständnis. Ich meinte mit "die entsprechende Schaltfläche in der Symbolleiste" die Schaltfläche in der Symbolleiste der Basic-IDE, also die 'Makro-Starten-Schaltfläche':
makro-starten.gif
makro-starten.gif (5.97 KiB) 2010 mal betrachtet
(das hätte doch aber spätestens da klar sein müssen wo ich das als Unterschied zu MS Office thematisierte, denn bei MS Office startet natürlich auch nur in der IDE das Makro worin der Cursor steht mit der dortigen Start-Schaltfläche und nicht mit einer Schaltfläche in einer benutzerdefinierten Symbolleiste zum direkten Starten von Makros)
Mir kam der Gedanke, dass die IDE die Module ggf. alphanumerisch nach ihre "Sub-Bezeichnung" abarbeitet
Nein, wenn Du in der Basic-IDE bist und auf die Makro-Start-Schaltfläche klickst (siehe vorstehendes Bild) startet immer das erste Makro des aktuell sichtbaren Moduls, egal wo der Cursor steht und wie das Makro heißt. Das erste Makro bestimmt sich dadurch das es im Modul ganz vorne bzw. oben steht.


Gruß
Stephan
Antworten