AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Fragen zu List- und Combobox

Ein Thema von Newcomer411 · begonnen am 13. Nov 2006 · letzter Beitrag vom 20. Nov 2006
Antwort Antwort
Seite 1 von 2  1 2      
Newcomer411

Registriert seit: 29. Okt 2006
Ort: Rauschenberg
21 Beiträge
 
#1

Fragen zu List- und Combobox

  Alt 13. Nov 2006, 14:39
Hallo,
habe hier ein paar fragen zu den oben genannten kompos:

1. Ich habe eine Combobox als Kategorie und eine Listbox für die Einträge. Die Daten die ich speicher werden mit Ini-File gespeichert.

Nun möchte ich das ich Einträge von der Listbox die in der Kategorie "X" vorhanden sind in die Listbox der Kategorie "XY" verschieben.
Aber ich habe nur eine Listbox und eine Combobox. Eigentlich will ich also Einträge die in der Datei X gespeichert sind in die Datei XY verschieben.

2. Wie realisiere ich das Suchen von Einträgen in einer Listbox unabhängig von der Kategoriewahl?

3. Wenn in einer Listbox ein Eintrag vorhanden ist und ich den gleichen Eintrag hinzufüge, soll hinter den zweiten Namen eine "(2)" automatisch geschrieben werden. logischerweiße beim dritten gleichen eintrag eine (3).....

Ich hoffe Ihr versteht mein Anliegen.

Gruß
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Fragen zu List- und Combobox

  Alt 13. Nov 2006, 15:50
Hallo,

vielleicht ist es besser, wenn du deine Fragen mit ein paar Beispieldaten unterlegst, denn ich habe den Verdacht, dass ich unter Kategorie etwas anderes verstehe als du.

Freundliche Grüße
  Mit Zitat antworten Zitat
Newcomer411

Registriert seit: 29. Okt 2006
Ort: Rauschenberg
21 Beiträge
 
#3

Re: Fragen zu List- und Combobox

  Alt 13. Nov 2006, 19:37
Hier habe ich mal ein Bild von meinem Programm und die Daten Wie sie gespeichert werden.

Code der von der Listbox ausgeht, wenn man speichert.
Code:
[Galaxywars]
url=www.galaxywars.de
loginname=MeinLoginName
loginpass=MeineLoginKennung
email=MeineE-MailAdresse
notes=MeineNotzizen
[Galaxywars (2)]
url=www.galaxywars.de
loginname=MeinLoginName
loginpass=MeineLoginKennung
email=MeineE-MailAdresse
notes=MeineNotzizen
[Galaxywarsforum]
url=www.galaxywars.de
loginname=MeinLoginName
loginpass=MeineLoginKennung
email=MeineE-MailAdresse
notes=MeineNotzizen
Code der von der Combobox ausgeht, wenn man speichert.
Code:
[Browser Games]
added on=27.09.2006
[E-Mail]
added on=27.09.2006
[Communitys]
added on=28.09.2006
[Host]
added on=02.10.2006
Jetzt will ich die Daten [Galaxywarsforum], die in der Kategorie [Browser Games] liegen in die Kategorie [Communitys] verschieben. Wie macht man sowas?

Ich weiß es ist überhaupt keine sichere Methode, die sachen als Ini-file zu speichern, aber ich möchte es erstmal so versuchen. Dabei spielt die sicherheit grad keine Rolle.
Miniaturansicht angehängter Grafiken
remember_167.jpg  
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: Fragen zu List- und Combobox

  Alt 15. Nov 2006, 09:25
Hallo,

ich vermute mal du hast für jede Kategorie eine eigene INI-Datei. Unabhängig von deinen visuellen Komponenten brauchst du Code zum Verlagern einer Section von einer INI-Datei zu einer anderen:

Delphi-Quellcode:
function IniName(const name: String): TFileName;
begin
  Result := ExtractFilePath(ParamStr(0)) + name + '.ini';
end;

procedure ExtractSection(const iniName, sectionName: String; section: TStrings;
    canErase: Boolean = False);
begin
  with TMemIniFile.Create(iniName) do
  try
    ReadSectionValues(sectionName, section);
    if canErase then
    begin
      EraseSection(sectionName);
      UpdateFile;
    end;
  finally
    Free;
  end;
end;

procedure AddSection(const iniName, sectionName: String; section: TStrings;
    mustClear: Boolean = False);
var
  i: Integer;
begin
  with TMemIniFile.Create(iniName) do
  try
    if mustClear then
      EraseSection(sectionName);
    for i := 0 to Pred(section.Count) do
      WriteString(sectionName, section.Names[i], section.ValueFromIndex[i]);
    UpdateFile;
  finally
    Free;
  end;
end;

procedure TransferSection(const iniFrom, iniTo, sectionName: String);
var
  section: TStrings;
begin
  section := TStringList.Create;
  ExtractSection(IniName(iniFrom), sectionName, section, True);
  AddSection(IniName(iniTo), sectionName, section, True);
  section.Free;
end;

procedure TDemoForm.ButtonClick(Sender: TObject);
begin
  TransferSection('Browser Games', 'Communities', 'Galaxywars');
end;
Getippt und nicht getestet.

Freundliche Grüße
  Mit Zitat antworten Zitat
Newcomer411

Registriert seit: 29. Okt 2006
Ort: Rauschenberg
21 Beiträge
 
#5

Re: Fragen zu List- und Combobox

  Alt 15. Nov 2006, 14:45
procedure AddSection(const iniName, sectionName: String; section: TStrings;
mustClear: Boolean = False);
var
i: Integer;
begin
with TMemIniFile.Create(iniName) do
try
if mustClear then
EraseSection(sectionName);
for i := 0 to Pred(section.Count) do
WriteString(sectionName, section.Names[i], section.ValueFromIndex[i]);
UpdateFile;
finally
Free;
end;
end;

ValueFromIndex erkennt er leider nicht...
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: Fragen zu List- und Combobox

  Alt 15. Nov 2006, 14:53
Kannst du doch einfach ersetzen:

WriteString(sectionName, section.Names[i], section.Values[section.Names[i]]);
  Mit Zitat antworten Zitat
Newcomer411

Registriert seit: 29. Okt 2006
Ort: Rauschenberg
21 Beiträge
 
#7

Re: Fragen zu List- und Combobox

  Alt 19. Nov 2006, 01:07
Wahrscheinlich bin ich zu blöd, aber wenn ich dann klicke, tut sich rein gar nichts.
trotzdem danke,
jetzt habe ich aber eine vielleicht leichtere lösung?!

habe 2 listboxen in einem Nebenfenster.. einmal mit Quelldatensatz und Zieldatensatz.

wie schaffe ich es mit Drag und Drop die Daten zu verschieben?
wenn es mit Drag und Drop nicht geht, welchen code brauche ich wenn ich das auf einen Button lege und per Button die Datensätze verschiebe...

Danke schonmal.
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#8

Re: Fragen zu List- und Combobox

  Alt 19. Nov 2006, 19:26
zum Drag&drop zwischen Listboxen evtl. folgendes Beispielprojekt:

http://www.fw-web.de/download.php?fi...ropListbox.zip

Gruß Frank
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: Fragen zu List- und Combobox

  Alt 19. Nov 2006, 19:58
Hi,

Zitat von Newcomer411:
jetzt habe ich aber eine vielleicht leichtere lösung?!
damit wählst du ein anderes Interaktionsmodell, der Code zum Verschieben einer Section bleibt aber derselbe. Und mal ehrlich: Leichter als ein ButtonClick dürfte Drag & Drop kaum werden.

Freundliche Grüße
  Mit Zitat antworten Zitat
Newcomer411

Registriert seit: 29. Okt 2006
Ort: Rauschenberg
21 Beiträge
 
#10

Re: Fragen zu List- und Combobox

  Alt 19. Nov 2006, 22:40
Zitat von marabu:
Hi,

Zitat von Newcomer411:
jetzt habe ich aber eine vielleicht leichtere lösung?!
damit wählst du ein anderes Interaktionsmodell, der Code zum Verschieben einer Section bleibt aber derselbe. Und mal ehrlich: Leichter als ein ButtonClick dürfte Drag & Drop kaum werden.

Freundliche Grüße

Mein Problem ist, das ich es einfach nicht hinbekomme das dass programm dieses ausführt... auch nicht mit deinem code... es kommt keine fehlermeldung, aber er verschiebt auch nichts.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz