Anonymní profil Max – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Max – Programujte.comAnonymní profil Max – Programujte.com

 

Příspěvky odeslané z IP adresy 85.248.66.–

Termoval
Visual Basic › Použití funkce z jiného form…
17. 11. 2008   #89925

Abych opsal svou situaci...dělám inventář do hry. Máme tu Scene1 (teda form1) a další form z názvem Inventory. Po tom co seberu na Scene1 nějaký předmět se mi uloží do inventáře, díky refresh funkci která obnoví data z Inventory formuláře a kterou volám vždycky při otevření formu Inventory klávesou I.
Problém je ale v tom, že seberu nejakej předmět a mám ho v inventáři. A teď mám kod pro Drag & Drop funkci...který je ale zakomponovaný ve formu Inventory. A teď potřebuji tu funkci použít na formulář scene1. Tedy ješte podrobněji když mám ve formu Inventory dejme tomu nějakej item, má označení Item (je to pouhý obrázek který zobrazuji vždy pokud je daná hodnota k itemu True, což se stane vždy když daný predmet user sebere) a teď, inventory zobrazuji metodou Show teda jsou vidét dva formy zároveň Scene1 a nad tím je Inventory a přesne takhle to má být. ale k té drag drop funkci...potřebuji aby se Item1 z formu Inventory dal přetáhnout do Scene1. Teda řekneme že máme v scene1 Picture1 a podmínku v drag drop funkci že pokud přenesu Item1 na picture1 tak se něco stane. ale tohle mi právě nefunguje! prostě nejde mi to použít z jednoho formu na druhej...možná kdybych dal něco jako:

Private Sub Scene1.Picture1_DragDrop(Source As Control, X As Single, Y As Single)

Command1.Visible = False
End Sub


ale toto bohužel nefunguje.

tady je kod:

Dim top_sur, left_sur As Integer

Private Sub Item1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Item1.Drag vbBeginDrag
End Sub

Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Item1.Drag vbEndDrag

End Sub

Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move X, Y
Item1.Move X - Command1.Width / 2, _
Y - Item1.Height / 2

Item1.Left = left_sur
Item1.Top = top_sur
End Sub

Private Sub Form_Load()
top_sur = Item1.Top
left_sur = Item1.Left
End Sub

Private Sub Picture1_DragDrop(Source As Control, X As Single, Y As Single)
Item1.Visible = False
End Sub

Max
Visual Basic › Drag & Drop prosím pomozte
1. 11. 2008   #88877

nwm napsal:
To Max : Dvakrát klikni na to nové tlačidlo - dostaneš event: onclick a medzi Private sub a End SUB vsuň: Form2.Onload();



Promiň:( no jsem s toho debil. prosím nemohl by jsi mi to do toho mého kodu nejak včlenit? abych videl ukazový priklad prosím.

Max
Visual Basic › Drag & Drop prosím pomozte
1. 11. 2008   #88871

Ahoj. pokouším se udělat funkci Drag & Drop ve Visual Basic 6. Ale moc se mi to nedaří. Mám zatím tohle co jsem sehnal na netu:

Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Command1.Drag vbBeginDrag 'zaciatok posuvania
End Sub

Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Command1.Drag vbEndDrag 'koniec posuvania
End Sub

Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move X, Y ' place the button
End Sub


Ale já jsem udelal k tomu Command2 tedy nové tlačítko. a jde mi o to aby když přetáhnu ten Command1 to první tlačítku co je v kodu na Command2 neco se stane. Nejaká akce, neumím to vubec udelat:(
a potrebuji ze pokud se nepresunul Command1 na Command2 tak se Command1 vráti zpět na místo odkud byl přesouván.

Opravdu moc prosím:( nikdo mi nedokaze poradit psal jsem temer vsude

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032022 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý