![]() |
image verschwindet bei eingabe bzw. klick?
hallo, ich möchte ein image verwschwinden lassen wenn in meinem edit feld etwas angezeigt wird, dass durch einen klick auf einen radiobutton geschieht ...
mit was für einen quelltext mach ich das? wäre schön wenn man mir helfen könnte :(
Delphi-Quellcode:
unit Unit3;
{$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, ComCtrls, Buttons, ExtCtrls, types; type { TForm3 } TForm3 = class(TForm) AbbrechenBitBtn1: TBitBtn; AbbrechenBitBtn2: TBitBtn; AbbrechenBitBtn3: TBitBtn; AbbrechenBitBtn4: TBitBtn; AbbrechenBitBtn5: TBitBtn; ALabel2: TLabel; ALabel3: TLabel; ALabel4: TLabel; ALabel5: TLabel; AntwortARadioButton2: TRadioButton; AntwortARadioButton3: TRadioButton; AntwortARadioButton4: TRadioButton; AntwortARadioButton5: TRadioButton; AntwortBRadioButton3: TRadioButton; AntwortBRadioButton4: TRadioButton; AntwortBRadioButton5: TRadioButton; AntwortBRadioButton6: TRadioButton; AntwortCRadioButton4: TRadioButton; AntwortCRadioButton5: TRadioButton; AntwortCRadioButton6: TRadioButton; AntwortCRadioButton7: TRadioButton; AntwortDRadioButton5: TRadioButton; AntwortDRadioButton6: TRadioButton; AntwortDRadioButton7: TRadioButton; AntwortDRadioButton8: TRadioButton; BLabel3: TLabel; BLabel4: TLabel; BLabel5: TLabel; BLabel6: TLabel; CLabel4: TLabel; CLabel5: TLabel; CLabel6: TLabel; CLabel7: TLabel; DLabel5: TLabel; DLabel6: TLabel; DLabel7: TLabel; DLabel8: TLabel; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; FrageaLabel2: TLabel; FrageaLabel3: TLabel; FrageaLabel4: TLabel; FrageaLabel5: TLabel; Image13: TImage; Image14: TImage; Image15: TImage; Image16: TImage; Image17: TImage; Image18: TImage; Image19: TImage; Image20: TImage; Image21: TImage; Image22: TImage; Image23: TImage; Image24: TImage; Image25: TImage; Image26: TImage; Image27: TImage; ImageList1: TImageList; weiterBitBtn2: TBitBtn; Edit1: TEdit; FrageaLabel1: TLabel; GroupBox1: TGroupBox; ALabel1: TLabel; BLabel2: TLabel; CLabel3: TLabel; DLabel4: TLabel; Quiz: TPageControl; Level1: TTabSheet; Level2: TTabSheet; Level3: TTabSheet; Level4: TTabSheet; Level5: TTabSheet; AntwortARadioButton1: TRadioButton; AntwortBRadioButton2: TRadioButton; AntwortCRadioButton3: TRadioButton; AntwortDRadioButton4: TRadioButton; weiterBitBtn3: TBitBtn; weiterBitBtn4: TBitBtn; weiterBitBtn5: TBitBtn; weiterBitBtn6: TBitBtn; procedure AbbrechenBitBtn1Click(Sender: TObject); procedure AntwortARadioButton1Change(Sender: TObject); procedure AntwortBRadioButton2Change(Sender: TObject); procedure AntwortCRadioButton3Change(Sender: TObject); procedure AntwortDRadioButton4Change(Sender: TObject); procedure weiterBitBtn2Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form3: TForm3; implementation {$R *.lfm} { TForm3 } { TForm3 } procedure TForm3.AntwortARadioButton1Change(Sender: TObject); begin Edit1.Caption:= 'Richtig! :)'; Edit1.Font.Color:= clgreen; end; procedure TForm3.AbbrechenBitBtn1Click(Sender: TObject); begin close; end; procedure TForm3.AntwortBRadioButton2Change(Sender: TObject); begin Edit1.Caption:= 'Leider falsch! :('; Edit1.Font.Color:= clred; end; procedure TForm3.AntwortCRadioButton3Change(Sender: TObject); begin Edit1.Caption:= 'Versuche es nochmal!'; Edit1.Font.Color:= clred; end; procedure TForm3.AntwortDRadioButton4Change(Sender: TObject); begin Edit1.Caption:= 'Falsch!'; Edit1.Font.Color:= clred; end; procedure TForm3.weiterBitBtn2Click(Sender: TObject); begin Edit1.Caption:= 'Super! Du bist hast das Level gschafft! :)'; Edit1.Font.Color:= clblack; Level2.show; end; end. |
AW: image verschwindet bei eingabe bzw. klick?
Jedes Control (also jede sichtbare Komponente) hat ein Property Visible mit dem man es sichtbar und unsichtbar schalten kann:
Delphi-Quellcode:
// Bild unsichtbar
Image1.Visible := False; |
AW: image verschwindet bei eingabe bzw. klick?
Dankeschön :D
und wie lasse ich die verschwinden, dass nicht beim einen Button alle verschwinden sondern nur nacheinander?! |
AW: image verschwindet bei eingabe bzw. klick?
Du hast in deinem Haus 10 Lampen und für jede Lampe einen Lichtschalter (also auch 10 Lichtschalter).
Alle Lampen sind eingeschaltet. Wie erreichst du es, dass nur eine Lampe ausgeschaltet wird? Eben, drücke nur auf einen Schalter. Genau so funktioniert das auch hier. |
AW: image verschwindet bei eingabe bzw. klick?
ihr wollt echt das ich hier nachdenke was ;) (und sachaufgaben sind eh nicht so mein ding -.-)
aber ich habe es schon allein hinbekommen gerade .
Delphi-Quellcode:
ist das so richtig?
unit Unit3;
{$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, ComCtrls, Buttons, ExtCtrls, types; type { TForm3 } TForm3 = class(TForm) AbbrechenBitBtn1: TBitBtn; AbbrechenBitBtn2: TBitBtn; AbbrechenBitBtn3: TBitBtn; AbbrechenBitBtn4: TBitBtn; AbbrechenBitBtn5: TBitBtn; ALabel2: TLabel; ALabel3: TLabel; ALabel4: TLabel; ALabel5: TLabel; AntwortARadioButton2: TRadioButton; AntwortARadioButton3: TRadioButton; AntwortARadioButton4: TRadioButton; AntwortARadioButton5: TRadioButton; AntwortBRadioButton3: TRadioButton; AntwortBRadioButton4: TRadioButton; AntwortBRadioButton5: TRadioButton; AntwortBRadioButton6: TRadioButton; AntwortCRadioButton4: TRadioButton; AntwortCRadioButton5: TRadioButton; AntwortCRadioButton6: TRadioButton; AntwortCRadioButton7: TRadioButton; AntwortDRadioButton5: TRadioButton; AntwortDRadioButton6: TRadioButton; AntwortDRadioButton7: TRadioButton; AntwortDRadioButton8: TRadioButton; BLabel3: TLabel; BLabel4: TLabel; BLabel5: TLabel; BLabel6: TLabel; CLabel4: TLabel; CLabel5: TLabel; CLabel6: TLabel; CLabel7: TLabel; DLabel5: TLabel; DLabel6: TLabel; DLabel7: TLabel; DLabel8: TLabel; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; FrageaLabel2: TLabel; FrageaLabel3: TLabel; FrageaLabel4: TLabel; FrageaLabel5: TLabel; Image13: TImage; Image14: TImage; Image15: TImage; Image16: TImage; Image17: TImage; Image18: TImage; Image19: TImage; Image20: TImage; Image21: TImage; Image22: TImage; Image23: TImage; Image24: TImage; Image25: TImage; Image26: TImage; Image27: TImage; ImageList1: TImageList; weiterBitBtn2: TBitBtn; Edit1: TEdit; FrageaLabel1: TLabel; GroupBox1: TGroupBox; ALabel1: TLabel; BLabel2: TLabel; CLabel3: TLabel; DLabel4: TLabel; Quiz: TPageControl; Level1: TTabSheet; Level2: TTabSheet; Level3: TTabSheet; Level4: TTabSheet; Level5: TTabSheet; AntwortARadioButton1: TRadioButton; AntwortBRadioButton2: TRadioButton; AntwortCRadioButton3: TRadioButton; AntwortDRadioButton4: TRadioButton; weiterBitBtn3: TBitBtn; weiterBitBtn4: TBitBtn; weiterBitBtn5: TBitBtn; weiterBitBtn6: TBitBtn; procedure AbbrechenBitBtn1Click(Sender: TObject); procedure AntwortARadioButton1Change(Sender: TObject); procedure AntwortBRadioButton2Change(Sender: TObject); procedure AntwortBRadioButton2Click(Sender: TObject); procedure AntwortBRadioButton3Click(Sender: TObject); procedure AntwortCRadioButton3Change(Sender: TObject); procedure AntwortCRadioButton2Click(Sender: TObject); procedure AntwortCRadioButton3Click(Sender: TObject); procedure AntwortDRadioButton4Change(Sender: TObject); procedure AntwortDRadioButton2Click(Sender: TObject); procedure AntwortDRadioButton3Click(Sender: TObject); procedure weiterBitBtn2Click(Sender: TObject); procedure weiterBitBtn3Click(Sender: TObject); procedure weiterBitBtn4Click(Sender: TObject); procedure weiterBitBtn5Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form3: TForm3; implementation {$R *.lfm} { TForm3 } { TForm3 } procedure TForm3.AntwortARadioButton1Change(Sender: TObject); begin Edit1.Caption:= 'Richtig! :)'; Edit1.Font.Color:= clgreen; end; procedure TForm3.AbbrechenBitBtn1Click(Sender: TObject); begin close; end; procedure TForm3.AntwortBRadioButton2Change(Sender: TObject); begin Edit1.Caption:= 'Leider falsch! :('; Edit1.Font.Color:= clred; Image15.Visible := False; end; procedure TForm3.AntwortBRadioButton2Click(Sender: TObject); begin Image14.Visible:= False; end; procedure TForm3.AntwortBRadioButton3Click(Sender: TObject); begin Image13.Visible:= False; end; procedure TForm3.AntwortCRadioButton3Change(Sender: TObject); begin Edit1.Caption:= 'Versuche es nochmal!'; Edit1.Font.Color:= clred; Image15.Visible:= False; end; procedure TForm3.AntwortCRadioButton2Click(Sender: TObject); begin Image14.Visible:= False; end; procedure TForm3.AntwortCRadioButton3Click(Sender: TObject); begin Image13.Visible:= False; end; procedure TForm3.AntwortDRadioButton4Change(Sender: TObject); begin Edit1.Caption:= 'Falsch!'; Edit1.Font.Color:= clred; Image15.Visible:= False; end; procedure TForm3.AntwortDRadioButton2Click(Sender: TObject); begin Image14.Visible:= False; end; procedure TForm3.AntwortDRadioButton3Click(Sender: TObject); begin Image13.Visible:= False; end; procedure TForm3.weiterBitBtn2Click(Sender: TObject); begin Edit1.Caption:= 'Super! Du bist hast das Level gschafft! :)'; Edit1.Font.Color:= clblack; Level2.show; end; procedure TForm3.weiterBitBtn3Click(Sender: TObject); begin Level3.show; end; procedure TForm3.weiterBitBtn4Click(Sender: TObject); begin Level4.show; end; procedure TForm3.weiterBitBtn5Click(Sender: TObject); begin Level5.show; end; end. |
AW: image verschwindet bei eingabe bzw. klick?
Indem du nur bei diesen das Visible änderst, welche ausgeblendet werden sollen und nicht bei Allen?
Bzw. wir wissen nicht was du machst, also können wir schlecht helfen, da die :glaskugel: manchmal versagt. [edit] zu langsam geschrieben PS: Visible, Show und Hide machen in etwa das Gleiche. PSS: Du hattest doch schon TabSheets verschwinden lassen ... darüber sollte man doch auch mal auf die Idee kommen, wie man etwas Anderes ebenfalls verschwinden lassen kann. :stupid: |
AW: image verschwindet bei eingabe bzw. klick?
Liste der Anhänge anzeigen (Anzahl: 1)
Nur mal so als Anreiz um
a) Anzeige und Logik zu trennen b) ein wenig mehr OOP zu benutzen c) nicht alles in ein Formular zu quetschen d) nicht alles mehrfach schreiben zu müssen (DRY) mal ein Mini-Beispiel-Quiz-Anwendung mit Source und Exe. Ist so nicht unter Lazarus lauffähig (die schönen Generics von Delphi werden benutzt), aber das Konzept sollte klar werden. Einen Screenshot spare ich mir, denn einen Schönheitspreis gewinnt man damit nicht :stupid: |
AW: image verschwindet bei eingabe bzw. klick?
Zitat:
![]() |
AW: image verschwindet bei eingabe bzw. klick?
Zitat:
Es wäre schon ein Erfolg, wenn wenigstens eine private Methode benützt würde:
Delphi-Quellcode:
....
private { private declarations } procdure ZeigeErgebnis(Text:string; farbe:TColor); .... end; .... procdure TForm3.ZeigeErgebnis(Text:string; farbe:TColor); begin Edit1.Caption:= Text; Edit1.Font.Color:= farbe; end; |
AW: image verschwindet bei eingabe bzw. klick?
Das ist mir schon bewusst, darum ja auch als Anreiz zu sehen.
Vor allem weil man schön sehen kann, dass der Quellcode wesentlich schlanker und dadurch übersichtlicher wird. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:59 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