Avatar billede Slettet bruger
15. maj 2004 - 00:59 Der er 6 kommentarer og
1 løsning

tom string i edit

Jeg har 2 edit felter hvis der ikke er skrevet i de 2 edit felter skal formen ikke kunne lukkes

jeg har denne kode som tjekker om de indtastninger er ens

if
edit1.text = edit2.text then
Memo.Lines.SaveToFile('ppp.txt')
else
???
// hvis formen lukkes gemmes en tom string i ppp.txt og det er jo dumt...

har også prøvet med:
if
Edit1.Text = '' then
//her skulle koden være for at formen ikke kan lukkes hvis string i felterne edit1 og 2 er tomme
Avatar billede stefmeister Nybegynder
15. maj 2004 - 01:05 #1
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if Edit1.Text = '' then
  CanClose := false
else
Application.Terminate;
end;
Avatar billede Slettet bruger
15. maj 2004 - 01:18 #2
nu er det ikke application som skal lukke men form2 og det giver ikke brugeren en mulighed for at annulere den låser så formen overhoved ikke kan lukkes hvis brugeren fortryder.
det ville være bedst hvis det kunne gå ind over en button som tjekker og er det i orden lukkes formen...
Avatar billede Slettet bruger
15. maj 2004 - 01:26 #3
ved tryk på button
den skal både tjekke om edit1 og 2 er tom og samtidig tjekke om edit1 og 2 er lig med hinanden, er de lig med hinanden og der er skrivet i feltet kan formen lukkes.
Avatar billede doc404 Novice
15. maj 2004 - 11:47 #4
if (Edit1.Text = '') or (Edit2.Text = '') or (Edit1.Text <> Edit2.Text) then
  begin
    // Her er et eller begge blank og de er IKKE ens
  end
else
  begin
    // Her er der skrevet det samme i begge
  end;

Du kunne sætte en Trim() rundt om Edit1.Text for at undgå at folk "snyder" ved at indtaste et mellemrum
Avatar billede Slettet bruger
15. maj 2004 - 12:33 #5
skriv et svar dov404...

det virker perfekt

her den hele kode:
procedure TSkift.dxButton1Click(Sender: TObject);
begin
if (Edit1.Text = '') or (Edit2.Text = '') or (Edit1.Text <> Edit2.Text) then
  begin
  ShowMessagePos('Koderne er ikke ens!',500,500);
  end
else
  begin
  Form1.Memo1.Text := Edit1.Text;
  Close;
  end;

end;
//koden bliver krypteret i memo og gemt som fil
// det er der ingen grund her til at vise *SS*
Avatar billede doc404 Novice
15. maj 2004 - 13:23 #6
Husk lige (Trim(Edit1.Text) = '') - med mindre du tillader 'space' som kode
;-)
Avatar billede Slettet bruger
15. maj 2004 - 13:41 #7
yep det har jeg gjort nu
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester