Hi an alle,
ich zermatere mir schon den ganzen tag das Hirn wie ich es mit ClipCursor in OnMouseMove und allem hinbekomme, das ich bei geklickter linker Maustaste und Mausbewegung den Effekt hinbekomme wie z.B. im Windows Explorer, wenn ich zwischen der Baumansicht(links) und der Liste(rechts) die Größe modifiziere.
Mein Problem ist, dass der Cursor sich halt an einer Position festfrisst und dann nicht mehr mitbekommt wenn ich wieder in die andere Richtung gehe.
Hier mal etwas von meinem Code
if(m\_bIsPressed)
{
//Bewegung nach rechts
if(point.x \> m\_noldCursorPos)
{
if(crSubject.Width() \> (m\_nDefWidthSubjectView / 2))
{
nDiff = point.x - crContact.right;
crSubject.SetRect(crSubject.left + nDiff, crSubject.top, crSubject.right, crSubject.bottom);
m\_wndSubjectView.MoveWindow(&crSubject);
crContact.SetRect(crContact.left, crContact.top, crContact.right + nDiff, crContact.bottom);
m\_wndContactView.MoveWindow(&crContact);
ClientToScreen(&crContact);
ClientToScreen(&crSubject);
crClickArea.left = crContact.right;
crClickArea.right = crSubject.left;
crClickArea.top = crContact.top;
crClickArea.bottom = crContact.bottom;
ClientToScreen(&point);
ScreenToClient(&point);
if(!ClipCursor(&crClickArea))
dwErr = GetLastError();
ScreenToClient(&crContact);
ScreenToClient(&crSubject);
}
}
//Bewegung nach Links
else if(point.x (m\_nDefWidthContactView / 2))
{
nDiff = point.x - crSubject.left;
crSubject.SetRect(crSubject.left + nDiff, crSubject.top, crSubject.right, crSubject.bottom);
m\_wndSubjectView.MoveWindow(&crSubject);
crContact.SetRect(crContact.left, crContact.top, crContact.right + nDiff, crContact.bottom);
m\_wndContactView.MoveWindow(&crContact);
ClientToScreen(&crContact);
ClientToScreen(&crSubject);
crClickArea.left = crContact.right;
crClickArea.right = crSubject.left;
crClickArea.top = crContact.top;
crClickArea.bottom = crContact.bottom;
if(!ClipCursor(&crClickArea))
dwErr = GetLastError();
ScreenToClient(&crContact);
ScreenToClient(&crSubject);
}
}
}
Ich weiß nicht was ich falsch mache.
In google kann ich leider nichts genaues finden.
Gruß