Newest Viewed Downloaded

Drag and Drop w .NETMateriały: gmarczyk.spaces.live.com

Drag and Drop w .NET

Materiały: gmarczyk.spaces.live.com

Etapy D&D w textbox’ach

Pamiętamy o włączeniu właściwości AllowDrop! fdsafdsfds

Event’s

DoDragDrop(Object Data, DragDropEffect effect) – zainicjowanie d&d DragDropEffect: All, Copy, Link.. – obrazki przy kursorze e.EFECT GiveFeedback(Object sender, GiveFeedbackEventArgs e) - zmiana kursora

Event’s cd.

DragEnter – kursor w polu kontrolki

Sprawdzanie typu danych

Sprawdzanie poprawności przenoszonych danych: e.Data.GetDataPresent(string format) Pobieranie przeniesionych danych: e.Data.GetData(string format)

Przykład sprawdzenia danych

if (e.Data.GetDataPresent(DataFormats.Text)) //potwierdzamy DragDropEffect else //zmieniamy DragDropEffect na None

DragDrop – „upuszczenie” obiektu nad kontrolką

Event’s QueryContinueDrag

QueryContinueDrag(object sender, QueryContinueDragEventArgs e) – sprawdzanie wciśniętych klawiszy e.ACTION DragAction: Continue, Drop, Cancel e.KeyState

Bitowe odpowiedniki klawiszy

Bit Klawisz 1 Lewy przycisk myszy 2 Prawy przycisk myszy 4 Shift 8 CTRL 16 Środkowy przycisk myszy 32 ALT

Sprawdzanie wciśniętych klawiszy

Control.ModifierKeys – zwraca wciśnięty przycisk modyfikacji typu Keys (alt, ctrl, shift) [DllImport("user32.dll”] public static extern short GetAsyncKeyState(int vkey);

TreeView etapy

Pobieranie węzła z TreeView

Pobranie kontrolki wywołującej DoDragDrop Pobranie węzła w, którym stworzymy nowy węzeł Tworzenie nowego węzła

Metody do pobierania węzła

TreeView.PointToClient(Point p) – oblicza pozycję kursora względem kontrolki TreeView.GetNodeAt(Point p) – pobiera węzeł w danym punkcie dla punktu p w obrębie wywołującej kontrolki

Przykład pobrania węzła

Point point = TreeView1.PointToClient(new Point(e.X, e.Y)); TreeNode target = TreeView1.GetNodeAt(point);

Kopiowanie i usuwanie węzła

TreeNode.Clone() – kopiowanie TreeNode.Remove() – usuwanie węzła TreeView.Nodes.Add(TreeNode.Clone()) – dodawanie węzła do danego TreeView

private void textBox1_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop, true)) { textBox1.Text = string.Empty; e.Effect = DragDropEffects.Copy; } else e.Effect = DragDropEffects.None; } private void textBox1_DragDrop(object sender, DragEventArgs e) { string[] files = (string[])e.Data.GetData(DataFormats.FileDrop); foreach (var item in files) { StreamReader file = new StreamReader(item); textBox1.Text += "==== " + item.ToString() + " ===="; textBox1.Text += "\r\n\r\n" + file.ReadToEnd() + "\r\n\r\n"; file.Dispose(); }

Showing 1 - 17 of 17 items Details

Name: 
DragDrop
Author: 
gh
Company: 
N/A
Description: 
Drag and Drop w .NETMateriały: gmarczyk.spaces.live.com
Tags: 
węzła | data | treeview | point | textbox1 | string | object | danych
Created: 
4/26/2009 2:39:39 PM
Slides: 
17
Views: 
0
Downloads: 
0
Rating: 
0


Comment



Share this presentation
|

Comments

Share this presentation:

|
Sitemap