AGB  ·  Datenschutz  ·  Impressum  







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

eigener Inspektor + auf- zuklappen

Ein Thema von skyware · begonnen am 12. Nov 2004 · letzter Beitrag vom 14. Nov 2004
Antwort Antwort
skyware

Registriert seit: 11. Dez 2002
Ort: Wetzikon, Zürich
151 Beiträge
 
Delphi 6 Enterprise
 
#1

eigener Inspektor + auf- zuklappen

  Alt 12. Nov 2004, 20:10
hallo zusammen,

folgendes problem an dem ich mir nun schon stundenlang die zähne ausbeisse
ich möcht mir einen eigenen sogenannten "inspektor" basteln (siehe attachment)
eigentlich ganz simple, eine titel-row hat wieder eine oder mehrere unter-rows.
beim doppelklick auf eine title-row soll diese auf- und zuklappen.
wenn ich nun auf die titel-row doppelklicke unter der dir rows 3.1 + 3.2 hängen, klappt
diese korrekt zu, beim erneuten doppelklicken öffnet sich die row wieder aber die
row reihenfolge stimmt nicht mehr
komplizierte erklärung sorry

kann mir da jemand weiterhelfen?

danke im voraus!
Angehängte Dateien
Dateityp: zip inspector.zip (9,4 KB, 15x aufgerufen)
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: eigener Inspektor + auf- zuklappen

  Alt 12. Nov 2004, 21:38
Moin,

ändere mal deine THTRowTitle.ToggleExpanded Prozedur...

Delphi-Quellcode:
{ THTRowTitle.ToggleExpanded:
-------------------------------------------------------------------------------}

procedure THTRowTitle.ToggleExpanded;
var
  xInd : integer;
  xRow : THTRow;
begin
  for xInd := 0 to FRows.Count-1 do
  begin
    xRow := THTRow(FRows.Objects[FRows.IndexOf(IntToStr(xInd))]);
    if (xRow is THTRowTitle) then
      SetRowVisible(xRow, not FExpanded)
{    else
      SetRowVisible(xRow, not FExpanded);}

  end;

  FExpanded := not FExpanded;
end;
Kommentiere mal den Else-Teil aus, dort machst du das Gleiche wie im Then-Teil, also immer das Gleiche.


MfG
Thorsten
  Mit Zitat antworten Zitat
skyware

Registriert seit: 11. Dez 2002
Ort: Wetzikon, Zürich
151 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: eigener Inspektor + auf- zuklappen

  Alt 12. Nov 2004, 22:21
Delphi-Quellcode:
 { THTRowTitle.ToggleExpanded:
-------------------------------------------------------------------------------}
 
procedure THTRowTitle.ToggleExpanded;
var
  xInd : integer;
  xRow : THTRow;
begin
  for xInd := 0 to FRows.Count-1 do
  begin
    xRow := THTRow(FRows.Objects[FRows.IndexOf(IntToStr(xInd))]);
    //if (xRow is THTRowTitle) then
      SetRowVisible(xRow, not FExpanded);
    //else
    // SetRowVisible(xRow, not FExpanded);
  end;

  FExpanded := not FExpanded;
end;
stimmt..dieser code war unnötig, allerdings sollte es so sein nur leider
ändert dies nicht an der original problematik
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: eigener Inspektor + auf- zuklappen

  Alt 13. Nov 2004, 01:40
Moin,

ja so wie du das jetzt geschrieben hast, ist es natürlich wieder das Selbe!

ich dachte ja auch nur an den Else-Zweig. Bei mir sieht das dann gut aus. Was stimmt denn dann nicht?

MfG
Thorsten
  Mit Zitat antworten Zitat
skyware

Registriert seit: 11. Dez 2002
Ort: Wetzikon, Zürich
151 Beiträge
 
Delphi 6 Enterprise
 
#5

Re: eigener Inspektor + auf- zuklappen

  Alt 13. Nov 2004, 09:02
hi,

wenn du nun auf den titel klickst unter dem die rows 3.1 und 3.2 liegen,
klappt dieser korrekt zu. beim auklappen allerdings ist die
reihenfolge dieser row anders...sprich zuerst kommt die row 3.1,
danach eine weitere titel row und dann erst die row 3.2

weisst du was ich meine?
mach mal vor- und nachher einen printscreen, dann wirst du die unterschiede
sehen. hab immer noch nicht rausgefunden was hier das problem ist
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: eigener Inspektor + auf- zuklappen

  Alt 13. Nov 2004, 17:50
Moin,

ich habe mir das jetzt nochmal angesehen und keinen Fehler gefunden.

Schau dir mal meine EXE an, ob dort ein Fehler auftritt. (habe nur den ELSE-Zweig auskommentiert)
Wenn ja, bin ich wohl blind.

Ich habe das mit Delphi 7 Enterprise kompiliert.

MfG
Thorsten
Angehängte Dateien
Dateityp: exe project1_619.exe (153,5 KB, 14x aufgerufen)
  Mit Zitat antworten Zitat
skyware

Registriert seit: 11. Dez 2002
Ort: Wetzikon, Zürich
151 Beiträge
 
Delphi 6 Enterprise
 
#7

Re: eigener Inspektor + auf- zuklappen

  Alt 13. Nov 2004, 19:53
hi

du darfs nicht einfach den else-zweig entfernen. der code musss so
aussehen wie oben.
wenn auf die titlerow geklickt wird sollen alle rows die unter dieser
titlerow liegen auch zugeklappt werden.
das heisst wenn du nun auf die titlerow klickt unter der die rows 3.1 und 3.2 liegen,
müssen diese auch ausgeblendet werden. und durch erneutes klicken wieder
eigenblendet...
weisst du wie ich meine?

gruss,
markus
  Mit Zitat antworten Zitat
skyware

Registriert seit: 11. Dez 2002
Ort: Wetzikon, Zürich
151 Beiträge
 
Delphi 6 Enterprise
 
#8

Re: eigener Inspektor + auf- zuklappen

  Alt 13. Nov 2004, 20:15
...hier mal die aktuellste source,
hab die verschiedenen ebenen mal farblich voneinander unterschieden,
sollte nun klarer sein welche rows zusammengehören....
Angehängte Dateien
Dateityp: zip inspector_360.zip (9,7 KB, 6x aufgerufen)
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: eigener Inspektor + auf- zuklappen

  Alt 13. Nov 2004, 23:19
Moin,

ok ich glaube jetzt habe ich es verstanden.

Hier mein neuer Vorschlag...

Delphi-Quellcode:
procedure THTRowTitle.ToggleExpanded;
var
  xInd : integer;
  xRow : THTRow;
  xExpanded : boolean;
begin
  xExpanded := not FExpanded;
  if xExpanded then begin
    for xInd := FRows.Count-1 downto 0 do
    begin
      xRow := THTRow(FRows.Objects[FRows.IndexOf(IntToStr(xInd))]);
      SetRowVisible(xRow, xExpanded);
    end;
  end
  else begin
    for xInd := 0 to FRows.Count-1 do
    begin
      xRow := THTRow(FRows.Objects[FRows.IndexOf(IntToStr(xInd))]);
      SetRowVisible(xRow, xExpanded);
    end;
  end;

  FExpanded := not FExpanded;
end;
ändere mal die Prozedur ab, dann sollte es gehen.


MfG
Thorsten
  Mit Zitat antworten Zitat
skyware

Registriert seit: 11. Dez 2002
Ort: Wetzikon, Zürich
151 Beiträge
 
Delphi 6 Enterprise
 
#10

Re: eigener Inspektor + auf- zuklappen

  Alt 14. Nov 2004, 10:28
guten morgen thorsten,

das schaut jetzt wunderbar aus
vielen dank für deine hilfe, du bist mein held
  Mit Zitat antworten Zitat
Antwort Antwort


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 11:40 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