Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Checkbox checken? (https://www.delphipraxis.net/111522-checkbox-checken.html)

BarcB 4. Apr 2008 18:43


Checkbox checken?
 
Hi, ich weiß nicht, vielleicht bin ich auch einfach zu blöd, aber ich bekomme es nicht hin eine Checkbox zu checken.

Beim Start des Programm wird überprüft ob ein Wert vorhanden ist, wenn ja dann soll die Checkbox gecheckt werden, dass gestaltet sich jedoch schwerer als gedacht.


Aktueller Code:
Delphi-Quellcode:
      if Wert = 'Ja' then
        cbSperren.State := cbChecked;
Hatte schon verschiedene Möglichkeiten probiert, die ich so gefunden habe,
letztendlich kommt immer der gleiche Fehler:

Zitat:

---------------------------
Project1
---------------------------
Invalid variant operation.
---------------------------
OK
---------------------------

DeddyH 4. Apr 2008 18:44

Re: Checkbox checken?
 
Delphi-Quellcode:
cbSperren.Checked := Wert = 'Ja' ;

Helmi 4. Apr 2008 18:45

Re: Checkbox checken?
 
hallo

so gehts:

Delphi-Quellcode:
if Wert = 'Ja' then
  CheckBox1.Checked := true;
oder:
Delphi-Quellcode:
CheckBox1.Checked := Wert = 'Ja';

BarcB 4. Apr 2008 18:48

Re: Checkbox checken?
 
Same as every year..

Zitat:

---------------------------
Project1
---------------------------
Invalid variant operation.
---------------------------
OK
---------------------------
Ich hatte mal probiert einen Button zu erstellen und mit dem eine Checkbox zu checken - gleicher Fehler.

DeddyH 4. Apr 2008 18:55

Re: Checkbox checken?
 
Was hat "Wert" denn für einen Typ?

BarcB 4. Apr 2008 18:57

Re: Checkbox checken?
 
Ich denk mal einen String

Ich hole es so Excel.Cells[5,9];
mit ShowMessage(Excel.Cells[5,9]) gehts, also denk ich mal es handelt sich um einen String.


Wenn ichs zuvor in eine Variable Speicher gehts

DeddyH 4. Apr 2008 19:06

Re: Checkbox checken?
 
Und wenn Du Wert mal explizit mit VarAsType nach String castest?

BarcB 4. Apr 2008 19:07

Re: Checkbox checken?
 
Zitat:

Wenn ichs zuvor in eine Variable Speicher gehts
Sieht quasi so aus:
Delphi-Quellcode:
      Check := Excel.Cells[7,8];
      cbSperren.Checked := Check = 'Ja';
geht das schöner?

DeddyH 4. Apr 2008 19:08

Re: Checkbox checken?
 
Naja, wenn es mit einer Zeile mehr funktioniert, würde ich nicht groß herumkaspern ;)

ToFaceTeKilla 9. Okt 2008 11:24

Re: Checkbox checken?
 
Hiho,

mich würde generell mal interessieren, wie man so eine Checkbox anspricht.

ich probier gerade rum und mit
Delphi-Quellcode:
  check:= excel.sheets[1].cells[37,3].value;
  excel.sheets[1].checkbox1.Checked:= check='Zustand'; // hier kommt der Fehler
krieg ich immer den Fehler:
"Die Methode 'Checkbox1' wird vom Automatisierungsobjekt nicht unterstützt!"

Und wie unterscheiden sich eigentlich die Steuerelements- und die Formularcheckbox? Kann man letztere auch ansprechen?

Thx

nahpets 9. Okt 2008 11:30

Re: Checkbox checken?
 
Hallo,
Delphi-Quellcode:
excel.sheets[1].checkbox1.Checked:= check='Zustand'; // hier kommt der Fehler
Ist die Checkbox1 denn ein Teil der Exceltabelle, ist das nicht vielmehr eine Komponente auf dem Forumlar?
Müsste das nicht
Delphi-Quellcode:
checkbox1.Checked:= check='Zustand';
heißen? Von welchem Typ ist check?

ToFaceTeKilla 9. Okt 2008 11:36

Re: Checkbox checken?
 
ups wieder die Hälfte vergessen:
check ist variant

und wie gesagt das war nur ein versuch von mir, die checkbox, die ich aufs excel-sheet gepackt hab, anzusprechen.
Ich teste nur grad mit nem ganz simplen Programm für nen Kollegen, wie man die Dinger aus Delphi heraus anspricht.
Also es geht darum:
Wie lese ich den Status aus? (Haken gesetzt oder nicht? bzw. true/false)
Wie setze ich den Status?

DeddyH 9. Okt 2008 11:39

Re: Checkbox checken?
 
Das ist also eine CheckBox in Excel? Dann würde ich mal die VBA-Hilfe konsultieren.

nahpets 9. Okt 2008 11:48

Re: Checkbox checken?
 
Zitat:

Zitat von DeddyH
Das ist also eine CheckBox in Excel? Dann würde ich mal die VBA-Hilfe konsultieren.

Alternative:
Erstelle in Excel ein Makro, mit dem Du genau das machst, was Du vorhast, schau die vom Makro den Quelltext an und "übersetze" ihn nach Delphi, in der Regel geht das mit vertretbarem bis geringem Aufwand.

ToFaceTeKilla 9. Okt 2008 12:02

Re: Checkbox checken?
 
Zitat:

Zitat von nahpets
Alternative:
Erstelle in Excel ein Makro, mit dem Du genau das machst, was Du vorhast, schau die vom Makro den Quelltext an und "übersetze" ihn nach Delphi, in der Regel geht das mit vertretbarem bis geringem Aufwand.

Jup, das hab ich schon gemacht (hab mich hieran orientiert).
Allerdings erfassen die Makros das "Häkchen-Setzen" nicht. Also da steht dann nix in dem Makro.


Zitat:

Zitat von DeddyH
Das ist also eine CheckBox in Excel? Dann würde ich mal die VBA-Hilfe konsultieren.

Hab ich gemacht. Jetzt weis ich zumindest schonmal, dass ich für die CB erstmal ein OLE-Objekt erstellen muss mithilfe der ProgID
Delphi-Quellcode:
var cb: variant;
cb:= CreateOleObject('Forms.CheckBox.1');
Nur wie weiter?
Mit
Delphi-Quellcode:
cb.value:=1;
passiert nix...


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:23 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 by Thomas Breitkreuz