11. juli 2002 - 08:47Der er
11 kommentarer og 1 løsning
Drag drop of panels
Hej
Jeg har efterhånden prøvet en del for år få det her skidt til at virke, men jeg tror det er på tide at bringe en ekspert ind i billedet.
Jeg har den her form. På formen skal der genereres en række panels dynamisk. De har alle en fast størrelse. Som udgangspunkt kan der være op til 2 panels horisontalt (h=1,2) og 3 vertikalt (v=1,2,3). Det er der ingen ben i ind til videre. Jeg vil nu gerne implementere drag drop på de panels der er genereret, så jeg kan bytte rundt på placeringen af dem. Lad os sige jeg har alle 6 genereret. Jeg tager fat i h=1, v=2 og trækker den af formen. Herefter skal de efterfølgende panels fylde hullet ud så der er er en fri placering til sidst på formen. Hvis jeg så tager det panel jeg har trukket af formen for igen at droppe det på formen vil jeg gerne kunne droppe det et sted på formen, hvorefter de "efterfølgende" panels rykker en plads for at gøre plads.
Hvad jeg gerne vil have en modig person til er at lave ovenstående eksempel til mig. Jeg tror ikke, at det er specielt svært, hvis man kender Delphi til bunds.
Aner det ikke, det kommer an på om ovenstående kan lade sig gøre ved at aligne dem, hvis ikke det kan lade sig gøre skal de ikke alignes. Alignment er en del af spørgsmålet, hvor jeg søger løsningen
Formen skal under alle omstændigheder autosize afhængig af, hvor mange panels der er på den. Dvs hvis der er 4 skal formen være noget i retningen af 2*Højde 2*Bredde. Hvis der er 5 skal den være 3*Højde 2*Bredde. Så hvis der er 2 panels kan den ene vel left alignes, mens den anden alignes til client. Hvis der er 3 eller mere ved jeg det ikke mere.
Jeg har selv siddet og rodet lidt med det her og fundet frem til, at TToolBar måske er en måde at håndtere problemet på, da en toolbar selv er i stand til at håndtere at flytte Buttons (med mine panels i), hvis der er for mange. Jeg kan imidlertid ikke få den til at wrappe hvis der ikke er plads til alle buttons på en linie. Det ser heller ikke ud til, at drag drop fungerer ... jeg har i hvert fald problemer med det. Men toolbar er i hvert fald en mulig ved for at løse mit problem.
Jeg tror du skal starte med at lave en rutine der kan placere dine panels, udfra en eller anden config-rec. du selv opfinder ( beskriver hvor mange du har på den ene led og hvormange du har i alt ), når du har den er det ikke så svært at impl. d'n'd, det gør du ved at ændre din config-rec. og så køre en repaint.
Tak for forsøgene, men der er ikke meget svar der passer til min forespørgsel
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.