Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - ListBox durchsuchen und in andere ListBox kopieren
Dr.Miezo - Do 08.11.12 12:24
Titel: ListBox durchsuchen und in andere ListBox kopieren
Hallo!
Ich verwende erst seit kurzem Delphi und bin dadurch noch kein Genie was das Arbeiten damit angeht.
Mein Problem: Ich habe eine ListBox in der Zahlenkombinationen aufgelistet werden. Nun soll immer die erste Kombination genommen werden und die ListBox nach der nächsten Kombination durchsucht werden, welche dieser nicht gleich usw. (also nur kombinationen bei denen die zahlen immer verschieden sind) und in einer seperaten ListBox angezeigt werden.
Hier ein kleines Beispiel:
(es sind immer 6-stellige Zahlen und aufgeteilt in gerade und ungerade Zahlen(a= gerade, b= ungerade) und jede dieser 6 Stellen ist variabel)
A.B.A.B.A.B
1-> 2.1.4.3.6.5 (diese nehmen)
2-> 2.1.4.3.6.7
3-> 2.1.4.3.6.9
usw.
z.b. 89-> 4.3.6.5.8.7 (diese auch nehmen, da sie mit keiner Position mit der ersten übereinstimmt)
(die 3. Kombination darf dann werder der 1. noch der 2. gleichen)
Dies fortführen und die ListBox durchsuchen, bis keine Kombination mehr übrig ist.
Da meine Delphi Hilfe auf Deutsch und somit unverständlich und zum Teil unvollständig ist bin langsam echt am verzweifeln...
Hat ijmd eine Idee, Tips, Ratschläge, oder gar einen Lösungsvorschlag?
thx schonmal im voraus!!!
Nersgatt - Do 08.11.12 13:13
Hallo und Willkommen in der EE!
Ich hab Dein Problem nicht so wirklich verstanden. Geht es Dir nur draum, wie Du an die einzelnen Einträge der Listbox heran kommst? Das ginge z.B. so:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| var Item : String; i : Integer; begin
for I := 0 to ListBox1.Items.Count - 1 do begin Item := Listbox1.Items.Strings[i]; ShowMessage(Item); end;
end; |
Mit Item kannst Du dann Deine Vergleiche anstellen.
Dr.Miezo - Do 08.11.12 13:23
Vielen Dank ! :)
Nicht ganz....ich brauch eine function die mir eben die einzelnen Kombinationen herauspickt die sich eben in jeder zahl unterscheiden und da jeder durchlauf unterschiedlich ist (also jedes mal wenn die ListBox gefüllt wird) stehen manchmal mehrere tausend Kombinationen in der Box und manchmal nur wenige hunderte oder nur eine Hand voll....und damit man eben nicht mühsam die Liste durchgehen muss brauch ich etwas dass die Liste der reihe nach von Oben beginnend durchgeht und aufhört wenn es Unten angekommen ist. Die erste Kombination wird genommen und von dieser ausgehen sollen dann die anderen gesucht werden und damit die 2. ListBox gefüllt werden. (Ich hatte da an eine Art Schleife gedacht aber wie ist mir ein Rätsel und alles was ich versucht habe endete im Absturz)
Nersgatt - Do 08.11.12 13:24
Also wirklich verstanden hab ich es immer noch nicht.
Aber zeig am besten mal Deinen (fehlgeschlagenen) Versuch.
Dr.Miezo - Do 08.11.12 13:27
Oha^^
Diesen hab ich wieder entfernt (war ein totales Chaos) aber ich kann dir mal zeigen wie die Zahlenkombinationen erstellt werden.....vllt verstehst du dann wie ich das meine :D
Moderiert von
Narses: Beiträge zusammengefasst
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140: 141: 142: 143: 144: 145: 146: 147: 148: 149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160: 161: 162: 163: 164: 165: 166: 167: 168: 169: 170: 171: 172: 173: 174: 175: 176: 177: 178: 179: 180: 181: 182: 183: 184: 185: 186: 187: 188: 189: 190: 191: 192: 193: 194: 195: 196: 197: 198: 199: 200: 201: 202: 203: 204: 205: 206: 207: 208: 209: 210: 211: 212: 213: 214: 215: 216: 217: 218: 219: 220: 221: 222: 223: 224: 225: 226: 227: 228: 229: 230: 231: 232: 233: 234:
| procedure TForm1.Button1Click(Sender: TObject); var P1: Integer; P2: Integer; P3: Integer; P4: Integer; P5: Integer; P6: Integer; Zaehler: Integer; Zaehler2: Integer; MaxWert1: Integer; MaxWert2: Integer; MaxWert3: Integer; MaxWert4: Integer; MaxWert5: Integer; MaxWert6: Integer; SinglePos: String; AsciiWert1: Integer; AsciiWert2: Integer; AsciiWert3: Integer; AsciiWert4: Integer; AsciiWert5: Integer; AsciiWert6: Integer; begin Screen.Cursor := crhourglass; ListBox1.Clear; Label11.Caption := ''; Label12.Caption := ''; Zaehler := 0; Zaehler2 := 0; P1 := -2; P2 := -2; P3 := -2; P4 := -2; P5 := -2; P6 := -2; SinglePos := Copy(Variationsbereich,1,1); AsciiWert1 := Ord(SinglePos[1]); if ((AsciiWert1 >= 48 ) and (AsciiWert1 <= 57)) then begin P1 := StrToInt(SinglePos); MaxWert1 := P1 + 1 + StrToInt(Sprung); end; if SinglePos = 'A' then begin if StrToInt(UntererWert) = ConvertToGerade(StrToInt(UntererWert)) then P1 := StrToInt(UntererWert) - StrToInt(Sprung) else P1 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert1 := ConvertToGerade(StrToInt(ObererWert)); end; if SinglePos = 'B' then begin if StrToInt(UntererWert) = ConvertToUngerade(StrToInt(UntererWert)) then P1 := StrToInt(UntererWert) - StrToInt(Sprung) else P1 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert1 := ConvertToUngerade(StrToInt(ObererWert)); end; while P1 <= MaxWert1 - StrToInt(Sprung) do begin if ((SinglePos = 'A') or (SinglePos = 'B')) then P1 := P1 + StrToInt(Sprung) else MaxWert1 := MaxWert1 - 1; SinglePos := Copy(Variationsbereich,2,1); AsciiWert2 := Ord(SinglePos[1]); if ((AsciiWert2 >= 48 ) and (AsciiWert2 <= 57)) then begin P2 := StrToInt(SinglePos); MaxWert2 := P2 + 1; end; if SinglePos = 'A' then begin if StrToInt(UntererWert) = ConvertToGerade(StrToInt(UntererWert)) then P2 := StrToInt(UntererWert) - StrToInt(Sprung) else P2 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert2 := ConvertToGerade(StrToInt(ObererWert)); end; if SinglePos = 'B' then begin if StrToInt(UntererWert) = ConvertToUngerade(StrToInt(UntererWert)) then P2 := StrToInt(UntererWert)-StrToInt(Sprung) else P2 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert2 := ConvertToUngerade(StrToInt(ObererWert)); end; while P2 <= MaxWert2 - StrToInt(Sprung) do begin if ((SinglePos = 'A') or (SinglePos = 'B')) then P2 := P2+StrToInt(Sprung) else MaxWert2 := MaxWert2 - 1; SinglePos := Copy(Variationsbereich,3,1); AsciiWert3 := Ord(SinglePos[1]); if ((AsciiWert3 >= 48 ) and (AsciiWert3 <= 57)) then begin P3 := StrToInt(SinglePos); MaxWert3 := P3 + 1; end; if SinglePos = 'A' then begin if StrToInt(UntererWert) = ConvertToGerade(StrToInt(UntererWert)) then P3 := StrToInt(UntererWert) - StrToInt(Sprung) else P3 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert3 := ConvertToGerade(StrToInt(ObererWert)); end; if SinglePos = 'B' then begin if StrToInt(UntererWert) = ConvertToUngerade(StrToInt(UntererWert)) then P3 := StrToInt(UntererWert) - StrToInt(Sprung) else P3 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert3 := ConvertToUngerade(StrToInt(ObererWert)); end; while P3 <= MaxWert3 - StrToInt(Sprung) do begin if ((SinglePos = 'A') or (SinglePos = 'B')) then P3 := P3 + StrToInt(Sprung) else MaxWert3 := MaxWert3 - 1; SinglePos := Copy(Variationsbereich,4,1); AsciiWert4 := Ord(SinglePos[1]); if ((AsciiWert4 >= 48 ) and (AsciiWert4 <= 57)) then begin P4 := StrToInt(SinglePos); MaxWert4 := P4 + 1; end; if SinglePos = 'A' then begin if StrToInt(UntererWert) = ConvertToGerade(StrToInt(UntererWert)) then P4 := StrToInt(UntererWert) - StrToInt(Sprung) else P4 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert4 := ConvertToGerade(StrToInt(ObererWert)); end; if SinglePos = 'B' then begin if StrToInt(UntererWert) = ConvertToUngerade(StrToInt(UntererWert)) then P4 := StrToInt(UntererWert) - StrToInt(Sprung) else P4 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert4 := ConvertToUngerade(StrToInt(ObererWert)); end; while P4 <= MaxWert4 - StrToInt(Sprung) do begin if ((SinglePos = 'A') or (SinglePos = 'B')) then P4 := P4 + StrToInt(Sprung) else MaxWert4 := MaxWert4 - 1; SinglePos := Copy(Variationsbereich,5,1); AsciiWert5 := Ord(SinglePos[1]); if ((AsciiWert5 >= 48 ) and (AsciiWert5 <= 57)) then begin P5 := StrToInt(SinglePos); MaxWert5 := P5 + 1; end; if SinglePos = 'A' then begin if StrToInt(UntererWert) = ConvertToGerade(StrToInt(UntererWert)) then P5 := StrToInt(UntererWert) - StrToInt(Sprung) else P5 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert5 := ConvertToGerade(StrToInt(ObererWert)); end; if SinglePos = 'B' then begin if StrToInt(UntererWert) = ConvertToUngerade(StrToInt(UntererWert)) then P5 := StrToInt(UntererWert) - StrToInt(Sprung) else P5 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert5 := ConvertToUngerade(StrToInt(ObererWert)); end; while P5 <= MaxWert5 - StrToInt(Sprung) do begin if ((SinglePos = 'A') or (SinglePos = 'B')) then P5 := P5 + StrToInt(Sprung) else MaxWert5 := MaxWert5 - 1; SinglePos := Copy(Variationsbereich,6,1); AsciiWert6 := Ord(SinglePos[1]); if ((AsciiWert6 >= 48 ) and (AsciiWert6 <= 57)) then begin P6 := StrToInt(SinglePos); MaxWert6 := P6 + 1; end; if SinglePos = 'A' then begin if StrToInt(UntererWert) = ConvertToGerade(StrToInt(UntererWert)) then P6 := StrToInt(UntererWert) - StrToInt(Sprung) else P6 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert6 := ConvertToGerade(StrToInt(ObererWert)); end; if SinglePos = 'B' then begin if StrToInt(UntererWert) = ConvertToUngerade(StrToInt(UntererWert)) then P6 := StrToInt(UntererWert) - StrToInt(Sprung) else P6 := StrToInt(UntererWert) + 1 - StrToInt(Sprung); MaxWert6 := ConvertToUngerade(StrToInt(ObererWert)); end; while P6 <= MaxWert6 - StrToInt(Sprung) do begin if ((SinglePos = 'A') or (SinglePos = 'B')) then P6 := P6 + StrToInt(Sprung) else MaxWert6 := MaxWert6 - 1; if TestKombination (IntToStr(P1)+IntToStr(P2)+IntToStr(P3)+IntToStr(P4)+IntToStr(P5)+IntToStr(P6)) then begin Zaehler := Zaehler + 1; MyStringList.Add(IntToStr(P1) + IntToStr(P2) + IntToStr(P3) + IntToStr(P4) + IntToStr(P5) + IntToStr(P6)); ListBox1.AddItem(IntToStr(P1) + IntToStr(P2) + IntToStr(P3) + IntToStr(P4) + IntToStr(P5) + IntToStr(P6),Form1); Label11.Caption := IntToStr(Zaehler); end else begin Zaehler2 := Zaehler2 + 1; Label12.Caption := IntToStr(Zaehler2); end; end; end; end; end; end; end; Screen.Cursor := crdefault; Variationsbereich := Copy(Variationsbereich,1,6); MyStringList.SaveToFile(Pfad + Variationsbereich + '.txt'); end; |
so sieht das dann aus....hoffe du kannst dir iwie ein Bild davon machen :D
Moderiert von
Narses: Delphi-Tags hinzugefügt
Nersgatt - Do 08.11.12 13:40
Ich glaub, wir müssen nochmal von vorne anfangen.
Was ich verstanden habe:
Du hast 2 Listboxen. Du möchtest nun einige Einträge aus der ersten Listbox in die zweite Listbox kopieren. Soweit richtig?
Was mir nun nicht klar ist, nach welcher Regel die Einträge kopiert werden sollten.
Dr.Miezo - Do 08.11.12 13:47
ok^^
Also die eine ListBox ist gefüllt mit Zahlenkombinationen (immer 6-stellig und immer verschieden)
und man nimmt jetzt die erste kombination die in der ersten ListBox steht (z.B. 432121) die merkt man sich und kopiert sie in die 2. ListBox jetzt geht man in der ersten ListBox weiter und sucht nach der Nächsten Kombination bei der alle Zahlen verschieden sind (in diesem Fall: 656543) diese merkt man sich nun auch, schreibt sie in die 2. ListBox und geht in der ersten List Box weiter und sucht nach der nächsten Kombination die weder der 1. noch der 2. Kombination gleicht (es dürfen gleiche zahlen vorkommen aber es geht um den Platz den sie einnehmen so darf hier in dem beispiel keine 4 mehr am anfang stehen usw...) und das wird so lange gemacht bis man nichts mehr findet und unten angekommen ist (es gibt keinen zweiten durchlauf)
hoffe des is deutlicher (habs beim ersten mal auch nicht kapiert als ich das machen sollte) ;)
Nersgatt - Do 08.11.12 13:55
Würdest Du nun in der ersten Listbox einen Eintrag mit 999599 finden, würdest Du den Eintrag NICHT übertragen, weil Du die 5 an der 4. Stelle schon mal hattest?
Dr.Miezo - Do 08.11.12 13:57
genau :)
nur Kombinationen an denen die Zahlen an anderen Stellen stehen als bei den Kombinationen zuvor und nichts darf sich gleichen
WasWeißDennIch - Do 08.11.12 14:03
Dazu würde ich mir als allererstes eine Hilfsfunktion zum Vergleich schreiben. Aus dem Kopf getippt:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| function StringsCompletelyDifferent(const s1, s2: string): Boolean; var i: integer; begin Assert(Length(s1) = Length(s2)); Result := true; i := 1; while (i <= Length(s1)) and Result do begin if s1[i] = s2[i] then Result := false else inc(i); end; end; |
Nersgatt - Do 08.11.12 14:05
Damit hätten wir die erste große Hürde überwunden - ich hab die Problemstellung verstanden :D
Ich denke da mal ein bisschen drüber nach.
Im Prinzip läuft es ja so (Pseudocode):
Quelltext
1: 2: 3: 4: 5:
| für jedes item in Listbox1 begin wenn SollItemEingefügtWerden(item) dann Item in Listbox2 einfügen end |
Damit haben wir das Problem schon mal etwas zerlegt. Wir brauchen jetzt nur noch eine Funktion, die prüft, ob das Item eingefügt werden muss.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:
| Funktion SollItemEingefügtWerden(AItem : String) : Boolean; var i, j : integer; gefunden : boolean; begin
gefunden := false; i := 0;
wiederhole solange (not gefunden) and (i <= Listbox2.Items.Count - 1) begin for j = 1 to 6 begin wenn AItem[j] = Listbox2.Items.Strings[i][j] gefunden := true;
end i := i + 1; end
result := not gefunden;
end; |
Dr.Miezo - Do 08.11.12 14:11
Gut..immerhin etwas :D
und ja genau so sollte des dann aussehen^^
wäre gut das so hinzubekommen :)
( Danke an : WasWeißDennIch )
Dr.Miezo - Do 08.11.12 14:59
kann ich das auch in nicht-Pseudocode haben? :D
Nersgatt - Do 08.11.12 15:01
Dr.Miezo hat folgendes geschrieben : |
| kann ich das auch in nicht-Pseudocode haben? :D |
Nö, sorry. Der Pseudocode ist doch schon 90% der Lösung. Den Rest darfste schon selbst machen. Etwas Eigeninitiative musst Du schon zeigen. Wenn Du konkrete Fragen zur Syntax hast, kannst Du die ruhig stellen. Aber ich werde Dir nicht Deine Arbeit machen.
Dr.Miezo - Do 08.11.12 15:07
wiederhole solange....hab da while do genommen
und wie is des mit dem not gefunden gemeint? sollte des true sein?
Nersgatt - Do 08.11.12 15:10
Mit dem While liegst Du schon ganz richtig.
NOT ist die Negation.
Man könnte schreiben "wiederhole solange (gefunden = false)...". Das bewirkt in diesem Fall das Selbe. Aaaaaber, man sollte nicht auf "False" prüfen, sondern lieber den Konstrukt mit NOT nehmen. Auf die Gründe möchte ich nicht genauer eingehen, da ich glaub, es würde Dich im Moment noch überfordern (ist nicht böse gemeint).
Merk Dir erstmal einfach "if NOT blabla" ist die richtige Alternative zu "if blabla = false"
Dr.Miezo - Do 08.11.12 15:20
kein problem
der will bei mir des ListBox ned akzeptieren....
und an welcher Stelle soll ich dann die gefundenen Kombinationen in die ListBox schreiben?
Nersgatt - Do 08.11.12 15:22
Zeig mal bitte die Codestelle, die nicht funktioniert und welches Fehlermeldung es gibt.
Den Code bitte in Delphi-Tags verpacken, dann wird es im Forum richtig dargestellt.
Also so:
Quelltext
1:
| <span class="inlineSyntax"><span class="codecomment">{PROTECTTAG9e0c1a0ed0a6d0fc1035e4fb303bd8d0}</span></span> |
Dr.Miezo - Do 08.11.12 15:28
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| while (not gefunden) and (i <= ListBox1.Items.Count - 1) do (undeclared identifier 'ListBox1') for p = 1 to 6; (for loop control variable must be simple local variable) begin (expression expected but begin found) if AItem[p] = ListBox1.Items.Strings[i][p] then (then expected but identifier items found) |
Nersgatt - Do 08.11.12 15:31
Dr.Miezo hat folgendes geschrieben : |
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7:
| while (not gefunden) and (i <= ListBox1.Items.Count - 1) do for p = 1 to 6; (for loop control variable must be simple local variable) begin (expression expected but begin found) if AItem[p] = ListBox1.Items.Strings[i][p] then (then expected but identifier items found) | |
- Deine Listbox sollte schon "Listbox1" heißen. Oder Du musst in den Code halt den entsprechenden Namen der Listbox schreiben.
- Die Variable "p" muss in der Procedure deklariert sein, wo Du sie verwendest.
- bei der FOR-Schleife gehört nach der 6 ein do (ohne ;) hin
Gerd Kayser - Do 08.11.12 15:34
Wenn ich die Aufgabenstellung richtig verstanden hab, dann enthält ListBox1 Kombinationen, die auch mehrfach vorkommen können. In die zweite Listbox sollen alle Kombinationen kopiert werden, ohne ihre ggf. vorhandenen Duplikate. Dann würde ich es so machen:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure TMainform.Button1Click(Sender: TObject); var Schleife : integer; begin ListBox2.Clear; ListBox2.Sorted := true; ListBox2.Items := ListBox1.Items; for Schleife := ListBox2.Count - 2 downto 0 do if ListBox2.Items[Schleife + 1] = ListBox2.Items[Schleife] then ListBox2.Items.Delete(Schleife + 1); end; |
Dr.Miezo - Do 08.11.12 15:39
bis auf des do passt alles so...ich habs ja angepasst an meinen quelltext...
und wenn ich die function oben bei public so reinsetzte:
Delphi-Quelltext
1:
| function Kombinationsauswahl(AItem: String) : Boolean; |
dann kommt:
unsatisfied forward or external declaration 'TForm1.Kombinationsauswahl'
Nersgatt - Do 08.11.12 15:40
Unten im Quellcode muss dann stehen:
Delphi-Quelltext
1: 2: 3: 4:
| function TForm1.Kombinationsauswahl(AItem: String) : Boolean; begin ... end; |
Das TForm1 davor ist wichtig, damit klar ist, dass das zu der Klasse gehört. Dann wird auch die Listbox gefunden.
Dr.Miezo - Do 08.11.12 15:43
ok ich bin blöd
aber damit funzt der rest noch immer nicht....also mein 'p' will er nich und mit dem begin gehts ah noch ned...
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| function TForm1.Kombinationsauswahl(AItem: String) : Boolean; var i : Integer; p : Integer; gefunden : Boolean; begin gefunden := false; i := 0;
while (not gefunden) and (i <= ListBox1.Items.Count - 1) do begin for p = 1 to 6 do begin if AItem[p] = ListBox1.Items.Strings[i][p] then gefunden := true; end; i := i + 1; end; result := not gefunden; end; |
Nersgatt - Do 08.11.12 15:45
Da fehlt der Doppelpunkt.
Dr.Miezo - Do 08.11.12 15:50
ok jetzt wirds echt peinlich
das mit in die listbox schreiben hab ich in die letzte zeile gesetzt
Delphi-Quelltext
1:
| ListBox2.AddItem(IntToStr(p)); |
etwa so aber iwie mach der des trotzdem nich...
Dr.Miezo - Do 08.11.12 16:02
passt schon jetzt gehts...
so nur noch eine kurze frage:
in dem langen quelltext den ich vorhin gepostet habe da sind einige andere functions und procedures eingebaut aber gibt es eine möglichkeit nun diese funktion einfach am anfang von button.click zu schreiben ohne diese in den quelltext einzubauen?
also dass die function eben auf 'knopfdruck' funktioniert?
platzwart - Do 08.11.12 16:11
Klar! Einfach auf den Button klicken, dann im Objektinspektor bei "OnClick" doppelklicken. Dann wird im Sourcecode eine neue Methode eingefügt und dort dann die Prozedur/Funktion deiner Wahl aufrufen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!