Forum: Sonstige Fragen zu Delphi
Delphi
by himitsu,
6. Sep 2009
ich glaub nicht, aber es könnte ja in Lazarus gehn :zwinker:
Forum: Sonstige Fragen zu Delphi
Delphi
by himitsu,
6. Sep 2009
geht auch etwas kürzer
while (m <> nil) and (Rec.dwMousePosition.X >= m.PaintInfo.Left) do begin
m := m.NextMenu;
i += 1;
end;
if m = nil then WriteLn('nil');
// oder
while Assigned(m) and (Rec.dwMousePosition.X >= m.PaintInfo.Left) do begin
Forum: Sonstige Fragen zu Delphi
Delphi
by himitsu,
6. Sep 2009
while (Rec.dwMousePosition.X > m.PaintInfo.Left) and (m<>nil) do begin
du greifst erst auf m zu und prüfst danach, ob es überhaupt existiert
also (m<>nil) muß nach vorne ;)
PS: auch wenn wieder mal die genaue Fehlermeldung fehlt ... ("eine AccessViolation")
däutet fast immer darauf hin, daß man auf etwas zugreift, welches nicht existiert, bzw. wo ein Pointer oder eine Objektvariable...