![]() |
Word OLE- Kontrollkästchen !
Guten Abend,
aus der beliebten und bekannten Reihe "ich habe da mal wieder ein Problem" heute folgendes...:-) Es betrifft Word OLE: Ich möchte in einem Worddokument Kontrollkästchen ansprechen. Unter ![]() Ich hatte schon im Forum geschaut- auch unter den anderen bekannten Seiten habe ich diesbezüglich nichts gefunden- nur wie man druckt und Textmarken anspricht, etc. Ich bedanke mich für eure Mühe im vorraus. Schönes Wochenende, Grüße Alex |
Re: Word OLE- Kontrollkästchen !
Hallo,
wie die Befehle lauten, kann ich Dir nicht sagen. Ich kann Dir nur den Tipp geben, auf ![]() Beste Grüße Ulrich |
Re: Word OLE- Kontrollkästchen !
Hallo Ulrich,
danke erstmal für die schnelle Antwort. Ich hatte gleich mal die Hilfedatei geöffnet...naja, nicht wirklich habe ich etwas gefunden. Danke trotzdem- vielleicht kennt ja jemand anderes die Lösung? :-) Alex |
Re: Word OLE- Kontrollkästchen !
Hi!
Habe mal was für dich zusammengeschustert. Ist kommentiert. Bei Fragen nachfragen.
Delphi-Quellcode:
uses
ComObj; procedure TForm1.Button1Click(Sender: TObject); const wdFieldFormTextInput = $00000046; wdFieldFormCheckBox = $00000047; var Word, Formfield: OLEVariant; var iAnzFormFelder, i: Integer; begin // Word instanz erzeugen try Word := CreateOleObject('Word.Application'); except // Fehler... end; // Word anzeigen Word.Visible := True; // Neues Dokument einfügen Word.Documents.Add; // Checkbox (Kontrollkästchen1) hinzufügen Formfield := Word.Selection.FormFields.Add(Word.Selection.Range, wdFieldFormCheckBox); // Einen Namen vergeben Formfield.Name := 'Kontrollkästchen1'; // Checkbox anchecken Formfield.Checkbox.Value := True; // Checkbox (Kontrollkästchen2) hinzufügen Formfield := Word.Selection.FormFields.Add(Word.Selection.Range, wdFieldFormCheckBox); // Einen Namen vergeben Formfield.Name := 'Kontrollkästchen2'; // Die Anzahl der Formfelder ermitteln iAnzFormFelder := Word.ActiveDocument.Formfields.Count; // ShowMessage(IntToStr(iAnzFormFelder)); // in einer Schleife alle Formfelder durchlaufen. for i := 1 to iAnzFormFelder do begin Formfield := Word.ActiveDocument.Formfields.Item(i); // überprüfen, ob es sich um ein Kontrollkästchen handelt. if Formfield.Type = wdFieldFormCheckBox then begin // FormFeldname anzeigen ShowMessage(Formfield.Name); // Dann etwas damit machen... Formfield.Checkbox.Value := not Formfield.Checkbox.Value; end; end; Word := Unassigned; Formfield := Unassigned; end; |
Re: Word OLE- Kontrollkästchen !
Hallo Toms,
hat geklappt...habe mir die richtigen Zeilen rausgeholt:
Delphi-Quellcode:
Vielen Danke für Eure Tipps! :thuimb:
Word.ActiveDocument.FormFields.Item('Kontrollkästchen1').Checkbox.value := true;
Grüße und einen schönen Sonntagabend, Alex - der sich richtig freut, weils endlich weitergehen kann :bouncing4: |
Re: Word OLE- Kontrollkästchen !
hat mir auch weitergeholfen dieser tip,
da es ja echt nen krampf ist mit der vb hilfe zu hantieren und die syntax/ nutzung der befehle von vb nicht konform sind mit den zu nutzenden OLE Methoden. :thumb: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz