Results 1 to 9 of 9

Thread: TDBCheckBox vertalen naar 1(true) of 0 (false)

  1. #1

    Post TDBCheckBox vertalen naar 1(true) of 0 (false)

    Ik heb op mijn formulier een TDBChecBox geplaatst.
    Wanneer ik dit aanvink (true) zou dit moeten vertaald worden in getal 1 in mijn tabel.

    Kan iemand mij een voorbeeldje tonen want ik geraakt er niet uit.

    Bedankt

  2. #2
    kuntao
    Guest
    Hoi

    hier simpel voorbeeldje ,

    function BoolToInteger(bool:Boolean):Integer;
    begin
    if bool then result := 1 else result := 0;
    end;

    function IntegerToBool(Int:Integer):Boolean;
    begin
    if int = 1 then result := true else result := false;
    end;

  3. #3
    Senior Member Willemm's Avatar
    Join Date
    Oct 2001
    Location
    Tilburg
    Posts
    797
    Dit levert ook het gewenste resultaat :

    Integer(BooleanVariabele) of
    Boolean(IntegerVariabele)

  4. #4
    5th member of nldelphi
    Join Date
    Mar 2001
    Location
    Alkmaar
    Posts
    2,127

    Smile

    Dvdyck,

    Het ligt er denk ik een beetje aan hoe jij je DataBase 'vult' maar indien je het
    allemaal zelf regelt dan zou dit mischien een zetje op weg kunnen zijn.

    Code:
    procedure TForm1.CheckBox1Click(Sender: TObject);
    var
    value : Byte;
    begin
      try
        if Checkbox1.Checked then value :=1 else value := 0;
        if not Dm.Tabel.State in [dsEdit, dsInsert] then Dm.Tabel.Edit;
        Dm.Tabel.FieldByName('Veldnaam').AsInteger := value;
        Dm.Tabel.Post;
      execept
        Showmessage('fout');
    end;
    Maar goed het is maar een suggestie en nog uit mijn hoofd ook, dus excuse me als
    het niet goed is

    Richard
    RLD

  5. #5
    Wat moet er in [dsEdit, dsInsert] komen ?
    Wanneer krijg je een foutmelding ?

    Code:
    -----
    Code:
    procedure TFormNamen.DBCheckBox_ZichtbaarClick(Sender: TObject);
    var value: Byte;
    begin
      try
        if DBCheckBox_Zichtbaar.Checked then value := 1 else value := 0;
        if not Datamodule1.IBTable_Namen.State in [dsEdit, dsInsert] then Datamodule1.IBTable_Namen.Edit;
        Datamodule1.IBTable_Namen.FieldByName('ZichtbaarVinkje').AsInteger := value;
        Datamodule1.IBTable_Namen.PostAppMessage;
      execept
        showmessage('fout');
    end;


    FOUTMELDINGEN:
    --------------
    [Error] Form_Namen.pas(180): Operator not applicable to this operand type
    [Error] Form_Namen.pas(182): Undeclared identifier: 'PostAppMessage'
    [Error] Form_Namen.pas(183): Undeclared identifier: 'execept'
    [Error] Form_Namen.pas(184): Missing operator or semicolon
    [Error] Form_Namen.pas(185): EXCEPT or FINALLY expected
    [Error] Form_Namen.pas(187): ';' expected but '.' found
    [Error] Form_Namen.pas(189): Declaration expected but end of file found
    [Fatal Error] Eindwerk.dpr(23): Could not compile used unit 'Form_Namen.pas'

  6. #6
    5th member of nldelphi
    Join Date
    Mar 2001
    Location
    Alkmaar
    Posts
    2,127
    Kijk dit verwachte ik al je moet natuurlijk niet alles letterlijk zo overnemen
    he ! Op die manier heb je 'mischien' je oplossing wel, maar snappen doe je het
    dan niet

    Want het is niet Execept maar Except
    Maar goed, ik zie ook nog een ander probje. en dat was dat er een END; ontbreekt
    na de except.

    Code:
    procedure TForm1.Button1Click(Sender: TObject);
    var
    value : byte;
    begin
     try
      {doe hier controle of tabel in edit of instert mode staat.}
      if CheckBox1.Checked then value := 1 else value := 0;
      {doe hier het wegschrijven in juiste byte of integer veld}
      {doe hier een post voor het opslaan.}
     except
      ShowMessage('fout');
     end;
    end;
    Dus er moet niet in dsEdit of dsInsert komen, de regel controleert of je tabel in Edit
    of Insert mode staat ! zoniet dan zet ie em in Edit mode.
    Iets in die geest.

    Wat de melding :Error] Form_Namen.pas(182): Undeclared identifier: 'PostAppMessage' betreft, of de postappmessage is niet of niet correct
    gedeclareerd, of het is geen geldige functie, of je moet nog een 1 of andere unit aan
    de uses list toevoegen, maar goed daar kan ik je niet verder aan helpen.

    Ik zou zeggen 'Have fun and Break a Legg'

    Richard

    PS. en als je nu de Pascal -> vB Code knop gebruikt dan zou je 'mischien' ook nog
    zien dat execept niet in het rood stond.
    RLD

  7. #7
    Eeeh, misschien mis ik iets, maar is het niet handiger om gewoon bij de property ValueChecked 1 en bij de property ValueUnChecked 0 in te vullen?
    Marcel

  8. #8
    5th member of nldelphi
    Join Date
    Mar 2001
    Location
    Alkmaar
    Posts
    2,127
    Zo ik ook weer wat geleerd

    Moet toch even verder als het puntje van mijn nose kijken, ik had het inderdaad al
    eens gezien maar nu net niet aan gedacht.

    Richard
    RLD

  9. #9

    Thumbs up

    Het is gelukt

    Geen ingewikkelde code maar wat gefoeffel in de properties

    Alvast erg bedankt

    Groeten,
    dvdyck

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. vertalen van engels naar nederlands
    By Jurgen Fransen in forum Koffiehoek
    Replies: 6
    Last Post: 11-Sep-03, 01:03
  2. Stukje VB code vertalen naar delphi
    By pbvs in forum Algemeen
    Replies: 7
    Last Post: 21-Feb-03, 12:17
  3. conversie van binair naar hexadecimaal
    By paulf in forum Algemeen
    Replies: 3
    Last Post: 08-Sep-02, 22:39
  4. Hulp nodig met omzetten naar Delphicode!
    By Remo in forum Algemeen
    Replies: 2
    Last Post: 29-May-02, 15:51

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •