Nvm Napisano Czerwiec 9, 2007 Zgłoś Share Napisano Czerwiec 9, 2007 Hail. Chciałbym zrobić efekt przyciągania forem, podobny do tego w Winampie. Chodzi mi o takie coś, że mam kilka formularzy i gdy któryś jest blisko drugie przyciągają się... Coś takiego ja magnes... Ciężko mi to wytłumaczyć :/ Pytanie jest takie: czy istnieje juz do tego gotowa funkcja czy sam będę zmuszony ją sobie napisać? Link do komentarza Udostępnij na innych stronach More sharing options...
5corpio Napisano Czerwiec 9, 2007 Zgłoś Share Napisano Czerwiec 9, 2007 A w czym problem sprawdzać pozycję przeciąganego okna względem innych form i jeśli są blisko siebie to ustawić pozycję odpowiednio. Sprawa jest bardzo prosta. Ot taka mini-strona moja po godzinach http://www.wnetrzekuchni.pl Link do komentarza Udostępnij na innych stronach More sharing options...
KaYou Napisano Czerwiec 9, 2007 Zgłoś Share Napisano Czerwiec 9, 2007 poszukaj krajew4 kiedys o tym pisal. "(2b || !(2b)) == question" W. Shakespeare http://jakubniwa.pl - świat sztucznej inteligencji Link do komentarza Udostępnij na innych stronach More sharing options...
Nvm Napisano Czerwiec 27, 2007 Autor Zgłoś Share Napisano Czerwiec 27, 2007 Byłem nad morzem a potem mi z głowy wyleciało i temat się trochę zakurzył. Ale do rzeczy. A w czym problem sprawdzać pozycję przeciąganego okna względem innych form i jeśli są blisko siebie to ustawić pozycję odpowiednio. Sprawa jest bardzo prosta. Tak, to oczywiste ale czy jest jakiś event, który reaguje na poruszanie formularzem? Żaden on mouse down (czy inne) nie działa bo te zdarzenia reagują na kliknięcia (bądź co innego) w obrębie formy, nie zaś na belce tytułowej. Gdy zaś poruszamy formularzem klikamy na tą właśnie belkę. Tak więc najbardziej odpowiednim zdarzeniem było by takie, które reaguje na poruszanie formą. Można to oczywiście również zrobić timerem ale takie rozwiązanie jest bardzo nie wydajne i strasznie zamula komputer. Link do komentarza Udostępnij na innych stronach More sharing options...
KKKas Napisano Czerwiec 27, 2007 Zgłoś Share Napisano Czerwiec 27, 2007 Reaguj na WM_WINDOWPOSCHANGING. Ja to tak robiłem. ҉ Link do komentarza Udostępnij na innych stronach More sharing options...
Nvm Napisano Czerwiec 27, 2007 Autor Zgłoś Share Napisano Czerwiec 27, 2007 Ok, działa. Dzięki. -Edit- To co dał KKKas działa, ale mój kod coś nie działa. Formularz jest przyciągnięty, jednak po chwili odskakuje z powrotem. Mój kod, który powoduje przyciąganie: if Form2.Left = Form1.Left + Form1.Width + 10 then be[LYHLKY LKYYFV'f&VĆ'27Ś>gVCŚ6bgVC7v6ą(( Link do komentarza Udostępnij na innych stronach More sharing options...
KKKas Napisano Czerwiec 27, 2007 Zgłoś Share Napisano Czerwiec 27, 2007 Dałeś 'inherited;' na początku procedury obsługującej WM_ ? EDIT: Poza tym, nie zmieniaj bezpośrednio .Left formy, tylko wartości w strukturze przekazywanej w parametrze (var Msg: TWMWINDOWPOSCHANGING), np: Msg.WindowPos^.x := Form1.Left + Form1.Width ҉ Link do komentarza Udostępnij na innych stronach More sharing options...
Nvm Napisano Czerwiec 27, 2007 Autor Zgłoś Share Napisano Czerwiec 27, 2007 Nie, ale już dodałem i problem występuje nadal. Link do komentarza Udostępnij na innych stronach More sharing options...
kuty Napisano Styczeń 27, 2013 Zgłoś Share Napisano Styczeń 27, 2013 Proponuję zobaczyć artykuł http://programistakuty.pl/przyciaganie-okna-aplikacji/. Tam z tego co wiem, jest rzeczowo wytłumaczone jak zaostosować przyciąganie okna aplikacji. Mnie się przydało. Link do komentarza Udostępnij na innych stronach More sharing options...
5corpio Napisano Styczeń 27, 2013 Zgłoś Share Napisano Styczeń 27, 2013 Nie no za przeproszeniem bez jaj. Znów odgrzewasz jakiegoś zapomnianego kotleta. I jeszcze piszesz tak jakby ten artykuł i strona nie była twoja. Jak chcesz komuś pomóc na forum to napisz w aktualnych wątkach a nie strzelasz takie g.... Tam z tego co wiem, jest rzeczowo wytłumaczone jak zaostosować przyciąganie okna aplikacji. Mnie się przydało. Twój własny artykuł ci się przydał? No bardzo bardzo dziwne. Nigdy bym się nie domyślił, że to co samemu zrobie mi się przyda. Nie mam takiej władzy ale pousuwałbym ci te posty bo są jeszcze bardziej wkurzające niż pytania początkujących czemu ich "Random" nie działa (bo to jeszcze jestem w stanie zrozumieć, że ktoś googla nie przejrzał). I nie mów, że piszesz dla potomnych bo ktoś może w przyszłości szukać takiego rozwiązania bo to co jest w artykule to...nic. Ot taka mini-strona moja po godzinach http://www.wnetrzekuchni.pl Link do komentarza Udostępnij na innych stronach More sharing options...
kuty Napisano Styczeń 28, 2013 Zgłoś Share Napisano Styczeń 28, 2013 Nie no za przeproszeniem bez jaj. Znów odgrzewasz jakiegoś zapomnianego kotleta. I jeszcze piszesz tak jakby ten artykuł i strona nie była twoja. Jak chcesz komuś pomóc na forum to napisz w aktualnych wątkach a nie strzelasz takie g.... Twój własny artykuł ci się przydał? No bardzo bardzo dziwne. Nigdy bym się nie domyślił, że to co samemu zrobie mi się przyda. Nie mam takiej władzy ale pousuwałbym ci te posty bo są jeszcze bardziej wkurzające niż pytania początkujących czemu ich "Random" nie działa (bo to jeszcze jestem w stanie zrozumieć, że ktoś googla nie przejrzał). I nie mów, że piszesz dla potomnych bo ktoś może w przyszłości szukać takiego rozwiązania bo to co jest w artykule to...nic. Znowu wywołany do tablicy i trzeba się tłumaczyć. "Mnie się przydało. " - nigdy nie ukrywałem, że ja to pisałem. Faktycznie mnie się przydało, co można zobaczyć w jednej z aplikacji którą udostępniłem dla innych, więc na prawdę MI SIĘ PRZYDAŁO. W sumie w dwóch których udostępniłem, zresztą wszystkie aplikacje piszę teraz ze wzorców, które zawierają ten fragment kodu. W gwoli wyjaśnienia: pisałem różne aplikacje i spotykałem się z różnymi problemami i szukałem rozwiązań na forach zapisując sobie linki. Znalazłem w końcu trochę czasu na to by podzielić się z innymi kodem i programami, które uważam, że mogą się komuś przydać. Odkopuje więc zakładki, które miałem zapisane i zamieszczam linki żeby ktoś komu się to przyda z tego skorzystał. Tobie się może nie przyda, 100 klolejnym osobom także się nie przyda, ale znajdzie się ktoś kto sięgnie do mojego rozwiązania. I dla takiej osoby ten wpis powstał. Nie przeglądałem wszystkich postów które zamieszczasz, ale widać że się nudzisz. To może napisz trochę linijek kodu, jakiś prosty program, co kolwiek i udostępnij go innym. Wole na to poświęcać swój czas niż na szukaniu na forum każdego nowego artykułu i nie wnoszenie żadnej linijki kodu do niego. Jak ci to bardzo przeszkadza to uzbroj się w cierpliwość, bo zamierzam (w miare wolnego czasu) na pisanie kolejnych artykułów i zamieszczanie ich na tym forum. Chce pokazać moje wizualne komponenty które napisałem (myślę że przydadzą się tym korzystających z Delphi których nie stać na ładne gradientowe buttony itp. oraz nie posiadają najnowszego środowiska Delphi). Wykorzystanie modułu nie pisanego przezemnie, ale zmodyfikowanego aby można było łatwo korzystać z wątków (wiem że napisałeś coś tam o wątkach ale tamto to naprawdę NIC). Dodaj jakieś pliki źródłowe, przykładowe programy. Jeżeli cię to bardzo wkurza to nie mój problem, tylko twój bo to ciebie wkurza. Ja mnie wkurza, że ktoś pali to wychodzę. Nie musisz śledzić moich postów i się wkurzać, chyba że lubisz tak, to z miłą chęcią powkurzamy się razem. Pozdrawiam i życzę samych sukcesów w programowaniu Link do komentarza Udostępnij na innych stronach More sharing options...
Polecane posty
Zarchiwizowany
Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.