Pagina 4 di 4 primaprima ... 2 3 4
Visualizzazione dei risultati da 31 a 32 su 32
  1. #31
    Utente di HTML.it L'avatar di fu510n
    Registrato dal
    Sep 2005
    Messaggi
    137
    sarebbe anche carino che al passaggio del mouse sopra una postazione vengano mostrate delle info relative a quella postazione
    A questo punto ti conviene fare una classe appropriata che esponga metodi e proprietà che ti servono.
    Ad esempio sarebbe carino un controllo personalizzato in cui visualizzi l'immagine dell'estintore come sfondo e quando ci vai sopra col mouse renda visibili dei pulsantini per le varie opzioni (ad esempio: mostra dettagli postazione, inserisci dettagli postazione; o semplicemente "Dettagli Postazione" che visualizza un insieme di campi compilabili direttamente collegati al DB tramite DataBinding in modo che se ci sono dati presenti, li mostri e puoi modificarli e se non ce ne sono puoi sempre inserirli).
    Mi sa che ti sto incasinando le idee
    Comunque sia l'idea di un controllo personalizzabile e bindabile è la cosa migliore da fare.
    Ah, un'altra cosetta... quando vai sopra il tuo controllo con l'immagine dell'estintore, potresti effettuare un ridimensionamento del controllo stesso in modo da simulare un effetto zoom e rendere maggiormente visibili i pulsantini.
    Fusion

    Currency Text Box (Updated: 16 Maggio 2008): http://digilander.libero.it/cmfusion/CurrencyTextBox.html

  2. #32
    Utente di HTML.it L'avatar di ganesha
    Registrato dal
    Jan 2003
    Messaggi
    357
    Originariamente inviato da fu510n
    Comunque sia l'idea di un controllo personalizzabile e bindabile è la cosa migliore da fare.
    ok mi sto muovendo in questa direzione.. quindi sto portando il codice relativo alle postazioni dentro la classe postazione.
    Sto trovando qualche difficoltà a portare dentro il codice relativo allo spostamento della postazione..

    ti posto quello che ho fatto finora:
    Codice PHP:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;

    using System.Drawing.Drawing2D;
    using System.Collections;

    namespace 
    WindowsApplication2
    {
        
        public 
    partial class Form1 Form
        
    {
            
    Image imgEstintore Image.FromFile("img/estintore.JPG");
            
    Image background Image.FromFile("img/background.jpg");

            
    Panel Mappa;

            public static 
    int WIDTH 800;
            public static 
    int HEIGHT 550;


            
            public 
    Form1()
            {
                
    InitializeComponent();
                
    Text "Postazioni antincendio";
                
    Size = new Size(WIDTHHEIGHT 40);
                
    MaximizeBox false;
                
    //FormBorderStyle = FormBorderStyle.FixedSingle;
                
    CenterToScreen();

                
    Mappa = new System.Windows.Forms.Panel();
                
    Mappa.Location = new System.Drawing.Point(00);
                
    Mappa.Size = new System.Drawing.Size(ClientSize.WidthClientSize.Height 40);
                
    Mappa.BackgroundImage background;
                
    Mappa.BackgroundImageLayout ImageLayout.Stretch;
                
    Mappa.AllowDrop true;
                
    Mappa.DragDrop += new DragEventHandler(Mappa_DragDrop);
                
    Mappa.DragEnter += new DragEventHandler(Mappa_DragEnter);
                
    Mappa.MouseDown += new MouseEventHandler(Mappa_MouseDown);
                
    Controls.Add(Mappa);

            }

            private 
    void Mappa_DragDrop(object senderDragEventArgs e)
            {
                
    Postazione DraggingObject = (Postazione)e.Data.GetData(typeof(Postazione));
                
    Console.WriteLine(DraggingObject.Name);
                
    DraggingObject.Location Mappa.PointToClient(new Point(e.- (DraggingObject.Size.Width 2), e.- (DraggingObject.Height 2)));
                
    DraggingObject null;
                
    e.Effect DragDropEffects.None;
            }

            private 
    void Mappa_DragEnter(object senderDragEventArgs e)
            {
                
    e.Effect DragDropEffects.Move;
            }

            private 
    void aggiungiPostazioneToolStripMenuItem_Click(object senderEventArgs e)
            {
                
    Mappa.SuspendLayout();
                
    int x contextMenuAggiungi.Left;
                
    int y contextMenuAggiungi.Top;
                
    Postazione currPost = new Postazione(xyMappa);
                
    Mappa.ResumeLayout();
            }

            private 
    void Mappa_MouseDown(object senderMouseEventArgs e)
            {
                if (
    e.Button == MouseButtons.Right)
                {
                    
    ContextMenuStrip contextMenuAggiungi;
                }
            }

        }





        public 
    partial class Postazione UserControl
        
    {
            
    ContextMenuStrip contextMenuRimuovi;
            
    ToolStripMenuItem rimuoviPostazioneToolStripMenuItem;
            
    Postazione LastContextSender;
            
    Image imgEstintore Image.FromFile("img/estintore.JPG");

            public 
    Postazione(int xint yPanel container)
            {
                
    Location container.PointToClient(new Point(imgEstintore.Size.Width 2imgEstintore.Size.Height 2));

                
    Size = new Size(imgEstintore.Size.Width 2imgEstintore.Size.Height 2);
                
    BorderStyle BorderStyle.FixedSingle;

                
    contextMenuRimuovi = new ContextMenuStrip();
                
    rimuoviPostazioneToolStripMenuItem = new ToolStripMenuItem();
                
    contextMenuRimuovi.Items.AddRange(new System.Windows.Forms.ToolStripItem[]
                    {
    rimuoviPostazioneToolStripMenuItem});
                
    contextMenuRimuovi.Name "contextMenuRimuovi";
                
    contextMenuRimuovi.Click += new System.EventHandler(this.contextMenuRimuovi_Click);
                
    rimuoviPostazioneToolStripMenuItem.Name "rimuoviPostazioneToolStripMenuItem";
                
    rimuoviPostazioneToolStripMenuItem.Text "Rimuovi postazione";

                
    ContextMenuStrip contextMenuRimuovi;
                
    MouseDown += new MouseEventHandler(DragMouseDown);

                
    container.Controls.Add(this);
            }

            protected 
    override void OnPaint(PaintEventArgs e)
            {
                
    base.OnPaint(e);

                
    Graphics graphics e.Graphics;
                
    graphics.DrawImageUnscaled(imgEstintore00);
            }

            private 
    void DragMouseDown(object senderSystem.Windows.Forms.MouseEventArgs e)
            {
                if (
    e.Button == MouseButtons.Left)
                {
                    ((
    Postazione)sender).DoDragDrop(senderDragDropEffects.Move);
                }
                else if (
    e.Button == MouseButtons.Right)
                {
                    
    LastContextSender = (Postazione)sender;
                }
            }

            private 
    void contextMenuRimuovi_Click(object senderEventArgs e)
            {
                
    LastContextSender.Dispose();
            }

        
        }



Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.