|
|
IN-VESTI DNW!!! Sono finalmente arrivate le nuovissime T-Shirt di DotNetWork!!! Con soli 15,00 € ci sosterrai nelle spese di gestione della Community e ti invieremo a casa una splendida maglietta. Se vuoi contribuire al mantenimento di DotNetWork.it Vai sulla pagina Iscrizioni Effettua il pagamento usando IWBank Oppure un Bonifico bancario (le coordinate sono sulla pagina Iscrizioni), inviaci una mail a support@dotnetwork.it indicandoci la tua taglia e l'indirizzo di spedizione. Non appena verificata la ricezione del pagamento provvederemo a spedirti la tua T-Shirt. Le magliette sono disponibili nelle taglie S-M-L-XL-XXL (in caso di esaurimento di una delle taglie, indica quella di "Backup"). Grazie per IN-VESTIRTI con NOI!!! .:DotNetWork Founders:.
|
|
|
|
|
[C#] drawline e split string con coordinate x y
Last Post 14 Mar 2010 18:36 by gigi. 44 Replies.
|
Sort:
|
|
Prev Next |
You are not authorized to post a reply. |
|
 Posts:90
 |
| 26 Jan 2010 12:02 |
|
Salve, ho questo codice: -------------------------------------------------- Graphics g = e.Graphics; Pen redPen = new Pen(Color.Red, 1 / g.DpiX); g.TranslateTransform(1, 1.0f); g.PageUnit = GraphicsUnit.Millimeter; g.DrawLine(redPen, 0, 0, 0, 100); g.DrawLine(redPen, 0, 100, 100,100); g.DrawLine(redPen, 100, 0, 100, 100); g.DrawLine(redPen, 100, 0, -0, -0); ----------------------------------------------- Mi dite come faccio ad aprire un file txt che ad questo formato: 0,100 nel senso ora mi spiego: Penso di usare un split string che riconosca la virgola, e mette i valori nella drawline x,y e i punti . per fare che può scrivere i numeri in queto formato: 230.32,302.12 solo che la drawline scritta cosi accetta se non mi sbaglio numeri da 0 99999 senza tipo questi 9999.999 e mi da errore di int. Mi dite come fare? Grazie. |
|
|
|
|
 Posts:241
 |
| 26 Jan 2010 14:49 |
|
Ciao, per fare che può scrivere i numeri in queto formato: 230.32,302.12 se ho capito bene te hai bisogno di queste due coordinate: 230.32 e 302.12 Sono però due numeri decimali (VS riconosce il punto come separatore decimale) quindi se hai bisogno di due numeri Integer devi fare un cast. Andrea |
|
|
|
|
 Posts:90
 |
| 26 Jan 2010 15:36 |
|
ok , ho fatto una prova, vedi codice: ---------------------------------------------------------------- private void pictureBox1_Paint(object sender, PaintEventArgs e) { double x = 1234.7; int a; // Cast double to int. a = (int)x; Graphics g = e.Graphics; Pen redPen = new Pen(Color.Red, 1 / g.DpiX); g.TranslateTransform(1, 1.0f); g.PageUnit = GraphicsUnit.Millimeter; g.DrawLine(redPen, 0, 0, 0, 100); g.DrawLine(redPen, 0, 100, a, 100); g.DrawLine(redPen, 100, 0, 100, 100); g.DrawLine(redPen, 100, 0, -0, -0); } -------------------------------------------------------------- e vedi la variabile a . Mi dici se è cosi?. Per prendere i valori da file txt.? come faccio? Grazie. |
|
|
|
|
 Posts:435
 |
| 27 Jan 2010 00:21 |
|
Ciao, per leggere dei valori da un file di testo usi uno streamreder.
eccoti un piccolo esempio che dovrebbe funzionare...
[code] public void LeggiFile(string nome) // nome contiene il nome del file { Graphics g = this.CreateGraphics(); Pen redPen = new Pen(Color.Red, 1 / g.DpiX); g.TranslateTransform(1, 1.0f); g.PageUnit = GraphicsUnit.Millimeter; g.DrawLine(redPen, 0, 100, 100, 100); g.DrawLine(redPen, 100, 0, 100, 100); g.DrawLine(redPen, 100, 0, -0, -0);
StreamReader sr = new StreamReader(nome); string[] coordinate; int x = 0; int y = 0; int x1 = 0; int y1 = 0; while (!sr.EndOfStream) { coordinate = sr.ReadLine().Split(','); // tra apici va il carattere che separa i valori x = Convert.ToInt32(coordinate[0]); // convertiamo in valori numerici interi, ma DrawLine accetta anche float y = Convert.ToInt32(coordinate[1]); // convertiamo in valori numerici interi, ma DrawLine accetta anche float g.DrawLine(redPen, x1, y1, x, y); x1 = x; // x1 contiene il valore x di partenza per la prossima linea y1 = y; // y1 contiene il valore y di partenza per la prossima linea } redPen.Dispose(); g.Dispose(); sr.Close(); sr.Dispose(); } [/code]
E' un po' spartano, ma spero ti sia di aiuto.
Max.
|
|
|
|
|
 Posts:435
 |
| 27 Jan 2010 00:23 |
|
ah, nel copia incolla del tuo codice sono rimaste righe da togliere, devi levare le tre righe sotto la riga dell'unita di misura, ovviamente. |
|
|
|
|
 Posts:90
 |
| 27 Jan 2010 14:37 |
|
grazie mille, apena posso provo, ora sono ad scuola, e poi mi e morto il mio babbo, e questi sono dietro ai funerali. Ti ringrazio molto. ciao apena posso provo. grazie. |
|
|
|
|
 Posts:90
 |
| 27 Jan 2010 19:04 |
|
grazie ho provato, e funziona.... mi dici una cosa: come faccio ad fare un pulsante che quando clicco esegue le coordinate, invece di metterlo nell picturebox1_paint? grazie. |
|
|
|
|
 Posts:90
 |
| 27 Jan 2010 20:25 |
|
ok, ho fatto. grazie mile. |
|
|
|
|
 Posts:90
 |
| 27 Jan 2010 20:36 |
|
ha, io sto diventanto scemo con queste coordinate..... vedi codice: o rimesso pixel , perchè millimetri non so neanche se funzionano da vero. ----------------------------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private void pictureBox1_Paint(object sender, PaintEventArgs e) { } private void button1_Click(object sender, EventArgs e) { Graphics g = pictureBox1.CreateGraphics(); Pen redPen = new Pen(Color.Red, 1 / g.DpiX); //g.TranslateTransform(1, 1.0f); g.PageUnit = GraphicsUnit.Pixel; StreamReader sr = new StreamReader("c:\\prova.txt"); string[] coordinate; int x = 0; int y = 0; int x1 = 0; int y1 = 0; while (!sr.EndOfStream) { coordinate = sr.ReadLine().Split(','); // tra apici va il carattere che separa i valori x = Convert.ToInt32(coordinate[0]); // convertiamo in valori numerici interi, ma DrawLine accetta anche float y = Convert.ToInt32(coordinate[1]); // convertiamo in valori numerici interi, ma DrawLine accetta anche float g.DrawLine(redPen, x1, y1, x, y); x1 = x; // x1 contiene il valore x di partenza per la prossima linea y1 = y; // y1 contiene il valore y di partenza per la prossima linea } redPen.Dispose(); g.Dispose(); sr.Close(); sr.Dispose(); } } } ------------------------------------------------------------------- questo dovrebbe disegnare un triangolo visto da alto in 2d. 1299,1308 1324,1258 1274,1258 Però fa solo una linea. Bo! io ci sto pazzendo.... mi dite voi come fare? grazie. |
|
|
|
|
 Posts:435
 |
| 28 Jan 2010 13:44 |
|
Nella picturebox non funziona nemmeno a me, ma nella form si. Non sono molto pratico nel disegnare sulle form e piu in la di cosi ho difficolta a darti delle dritte giuste. ;-) Non ho capito cosa devi fare, ma comunque, se devi disegnare un grafico ti consiglio nplot, che e' una dll gratuita, facile da utilizzare e piuttosto veloce nel disegno. ecco il link:
http://netcontrols.org/nplot/wiki/i...n.HomePageHTH Max |
|
|
|
|
 Posts:435
 |
| 28 Jan 2010 14:09 |
|
Aggiornamento: Per vedere cosa hai disegnato devi aggiungere questa riga alla fine del ciclo di disegno, prima dei dispose: pictureBox1.SendToBack(); Altrimenti non vedi nulla (ma non chiedermi perche') ! |
|
|
|
|
 Posts:241
 |
| 28 Jan 2010 14:26 |
|
Nella picturebox non funziona nemmeno a me, ma nella form si. A me funziona. Le coordinate sono superiori alla risoluzione dello schermo quindi il triangolo viene disegnato molto spostato (e ne vedi solo una linea). Prova a ridurre le coordinate per capire meglio: x = Convert.ToInt32(coordinate(0)) \ 5 ' divide la coordinata per 5 y = Convert.ToInt32(coordinate(1)) \ 5 ' divide la coordinata per 5 Se vuoi testare invece le coordinate attuali è un po' più complicato: - aggiungi un panel con Autoscroll=True - inserisci al suo interno la picture box ridimensiona la picturebox a all'interno del ciclo While ' Variabili d'appoggio fuori dal ciclo While. Dim resizeWith As Integer = 0 Dim resizeHeight As Integer = 0 ... ' Ridimensiona la picturebox in base alle coordinate. If x > resizeWith Then Me.PictureBox1.Width = x + 100 End If If y > resizeHeight Then Me.PictureBox1.Height = y + 100 End If Andrea |
|
|
|
|
 Posts:241
 |
| 28 Jan 2010 14:36 |
|
Dimenticavo che per testare la picture dentro al panel devi per forza disegnare all'interno dell'evento Paint, altrimenti l'immagine verrà cancellata ogni volta che cliccherai sulle scrollbars. Per attivare il disegno puoi appoggiarti ad una variabile booleana ("flag") che attiverai col pulsante. Es: dim draw as boolean ... Private Sub Button1_Click(ByVal sender As S... Me.draw = true End sub ... Private Sub PictureBox1_Paint(ByVal sender As Ob.... if Me.draw = True Then ' disegna .... else exit sub ' se lo legge Alberto si arrabbia end if End sub Il codice è in VB ma è semplice. Andrea |
|
|
|
|
 Posts:90
 |
| 28 Jan 2010 17:58 |
|
ok, si come che io uso autocad per disegnare il 2d cad , e mi volevo simulare un pantografo a controllo numerico, solo se prendo le misure che ci sono in autocad , e le metto nel programma con le coordinate giuste, il programma mi disegna altro. o alcune volte nulla. Ora provo come mi avete suggerito, solo che mi è difficile convertire da vb.net a c# , perchè conosco poco il c# e vb.net nulla. Ora vedo anche quella dll e vedo se fa caso mio. grazie. |
|
|
|
|
 Posts:435
 |
| 28 Jan 2010 18:09 |
|
Se devi convertire da C# a VB e viceversa questo e' il sito giusto: http://www.developerfusion.com/tools/convert/csharp-to-vb/ (lo trovi nei link in fondo alla homepage di DNW) HTH Max |
|
|
|
|
 Posts:90
 |
| 28 Jan 2010 19:40 |
|
allora, ci sono quasi , ora vorrei che mi disegna pixel per pixel, per adesso ho provato cosi, ma non so perchè non funziona.... sto prendento spunto da qui: http://www.mycutepictures.com/tutorials/csharp/2009/03/drawing-lines-pixel-by-pixel-in-c/ questo è il mio codice codice: ------------------- List PointList = new List(); int pointIndex = 0; private void button1_Click(object sender, EventArgs e) { try { timer1.Enabled = true; using (StreamReader sr = new StreamReader("TextFile1.txt")) { string[] coordinate; this.pictureBox1.Image = null; Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height); Graphics g = Graphics.FromImage(bmp); Pen redPen = new Pen(Color.Red, 1 / g.DpiX); g.TranslateTransform(pictureBox1.Width / 5, pictureBox1.Height / 5); g.PageUnit = GraphicsUnit.Pixel; g.PageScale = 2.0F; for (int i = 0; i < pointIndex; i++) { while (!sr.EndOfStream) { coordinate = sr.ReadLine().Split(','); int x1 = Convert.ToInt32(coordinate[0]); int y1 = Convert.ToInt32(coordinate[1]); int x = Convert.ToInt32(coordinate[2]+1); int y = Convert.ToInt32(coordinate[3]+1); g.DrawLine(redPen, x1, y1, x, y); } } pictureBox1.Image = bmp; } } catch (Exception ex) { MessageBox.Show("" + ex.ToString() + ""); } } private void timer1_Tick(object sender, EventArgs e) { if (pointIndex < PointList.Count - 1) { pointIndex++; this.Refresh(); } } ----------------------------------------------- questo è il file code: 0,100,100,100 100,0,100,100 100,0,-0,-0 0,100,0,0 Mi dite come faccio ad fare che mi traccia un pixel per pixel? grazie. |
|
|
|
|
 Posts:435
 |
| 29 Jan 2010 08:39 |
|
Ciao, ho guardato il tutorial che hai indicato, ma il codice non assomiglia nellmeno lontanamente a quello che hai scritto tu. Li disegna la linea punto per punto, leggendo le coordinate iniziali e finali della inea e calcolandone lunghezza e punti intermedi... Piu' che mdificare i tuo codice dovresti prendere quello e aggiungere le parti di lettura dei dati a file. come vedi qui: PointF[] pt = new PointF[] { new PointF(100, 100), new PointF(150, 150), new PointF(200, 100), new PointF(100, 100), crea un array di punti (che sono i vertici di un triangolo) e nelle righe sotto calcola le coordinate dei punti intermedi aggiungendoli alla lista: List PointList alla fine disegna le linee ciclando sulla lista. Usa quel codice li e aggiungi solo la lettura dei dati da file. HTH Max
|
|
|
|
|
 Posts:90
 |
| 29 Jan 2010 10:32 |
|
grazie, e come faccio ad modificare quel tutorial e prendere i valori dal file di testo come si era già fatto prima? grazie mille. |
|
|
|
|
 Posts:90
 |
| 29 Jan 2010 11:29 |
|
scusa, ma non so come fare senza questo codice: ORA HO FATTO COSI: ---- private void button1_Click(object sender, EventArgs e) { using (StreamReader sr = new StreamReader("TextFile1.txt")) { SetStyle(ControlStyles.UserPaint, true); SetStyle(ControlStyles.AllPaintingInWmPaint, true); SetStyle(ControlStyles.DoubleBuffer, true); string[] coordinate; while (!sr.EndOfStream) { coordinate = sr.ReadLine().Split(','); PointF[] pt = new PointF[] { new PointF(coordinate[0], coordinate[1]), new PointF(150, 150), new PointF(200, 100), new PointF(100, 100), }; // Get Points From Line(s) float curDist = 0; float distance = 0; for (int i = 0; i < pt.Length - 1; i++) { PointF ptA = pt; PointF ptB = pt[i + 1]; float deltaX = ptB.X - ptA.X; float deltaY = ptB.Y - ptA.Y; curDist = 0; distance = (float)Math.Sqrt(Math.Pow(deltaX, 2) + Math.Pow(deltaY, 2)); while (curDist < distance) { curDist++; float offsetX = (float)((double)curDist / (double)distance * (double)deltaX); float offsetY = (float)((double)curDist / (double)distance * (double)deltaY); PointList.Add(new PointF(ptA.X + offsetX, ptA.Y + offsetY)); } } } } } --------------------- Ma mi da errori. Mi dici come fare?. grazie. |
|
|
|
|
 Posts:90
 |
| 29 Jan 2010 11:30 |
|
*scusa, ma non so come fare senza questo codice: volevo dire che ora ho fatto cosi, ma non mi funiona perchè mi da errori dei pointf new pointf. Mi protesti aiutare? PS: Ma non c'è il comando modifica post del forum?. |
|
|
|
|
 Posts:435
 |
| 29 Jan 2010 12:17 |
|
Prova con questo codice, ma ricorda di cercare di capire quello che stai copiando e incollando ! ;-)
using (StreamReader sr = new StreamReader("pippo.txt")) { List PointList = new List(); int x=0; int y=0; SetStyle(ControlStyles.UserPaint, true); SetStyle(ControlStyles.AllPaintingInWmPaint, true); SetStyle(ControlStyles.DoubleBuffer, true); string[] coordinate; List pt = new List(); while (!sr.EndOfStream) {
coordinate = sr.ReadLine().Split(','); x = Convert.ToInt32(coordinate[0]); // convertiamo in valori numerici interi, ma DrawLine accetta anche float y = Convert.ToInt32(coordinate[1]); // convertiamo in valori numerici interi, ma DrawLine accetta anche float PointF p = new PointF(x, y); pt.Add(p); }
// Get Points From Line(s) float curDist = 0; float distance = 0; for (int i = 0; i < pt.Count - 1; i++) { PointF ptA = pt; PointF ptB = pt[i + 1]; float deltaX = ptB.X - ptA.X; float deltaY = ptB.Y - ptA.Y; curDist = 0; distance = (float)Math.Sqrt(Math.Pow(deltaX, 2) + Math.Pow(deltaY, 2)); while (curDist < distance) { curDist++; float offsetX = (float)((double)curDist / (double)distance * (double)deltaX); float offsetY = (float)((double)curDist / (double)distance * (double)deltaY); PointList.Add(new PointF(ptA.X + offsetX, ptA.Y + offsetY)); } } }
HTH Max
|
|
|
|
|
 Posts:90
 |
| 29 Jan 2010 20:08 |
|
ok. scusa per il ritardo ma ero a scuola in officina.... per 6 ore. ed poi sono andato al risotarante. Ora provo. grazie. |
|
|
|
|
 Posts:90
 |
| 29 Jan 2010 20:16 |
|
allora, mi da 4 errori il compilatore: mi dice: Errore 1 L'utilizzo del tipo generico 'System.Collections.Generic.List' richiede argomenti di tipo '1' D:\sito\Tutorial5\Tutorial5\Form1.cs 43 17 Tutorial5 List PointList = new List(); <- Errore qui. e l'altro: List pt = new List(); Sempre il solito messaggio.. che cosa devo fare? grazie mille.
|
|
|
|
|
 Posts:90
 |
| 29 Jan 2010 20:44 |
|
*D:\sito\ questo non vederlo è dove ho messo il tutorial per provarlo e per mettere le tue modifiche. Grazie. |
|
|
|
|
 Posts:90
 |
| 29 Jan 2010 20:46 |
|
faccio prima ad copiarti tutto il codice qui: Ora me lo sto studiando solo che non riesco ad risolvere quei errori lì. ------------ 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.IO; namespace Tutorial5 { public partial class Form1 : Form { List PointList = new List(); int pointIndex = 0; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private void Form1_Paint(object sender, PaintEventArgs e) { } private void timer1_Tick(object sender, EventArgs e) { if (pointIndex < PointList.Count - 1) { pointIndex++; this.Refresh(); } } private void button1_Click(object sender, EventArgs e) { using (StreamReader sr = new StreamReader("pippo.txt")) { List PointList = new List(); int x = 0; int y = 0; SetStyle(ControlStyles.UserPaint, true); SetStyle(ControlStyles.AllPaintingInWmPaint, true); SetStyle(ControlStyles.DoubleBuffer, true); string[] coordinate; List pt = new List(); while (!sr.EndOfStream) { coordinate = sr.ReadLine().Split(','); x = Convert.ToInt32(coordinate[0]); // convertiamo in valori numerici interi, ma DrawLine accetta anche float y = Convert.ToInt32(coordinate[1]); // convertiamo in valori numerici interi, ma DrawLine accetta anche float PointF p = new PointF(x, y); pt.Add(p); } // Get Points From Line(s) float curDist = 0; float distance = 0; for (int i = 0; i < pt.Count - 1; i++) { PointF ptA = pt; PointF ptB = pt[i + 1]; float deltaX = ptB.X - ptA.X; float deltaY = ptB.Y - ptA.Y; curDist = 0; distance = (float)Math.Sqrt(Math.Pow(deltaX, 2) + Math.Pow(deltaY, 2)); while (curDist < distance) { curDist++; float offsetX = (float)((double)curDist / (double)distance * (double)deltaX); float offsetY = (float)((double)curDist / (double)distance * (double)deltaY); PointList.Add(new PointF(ptA.X + offsetX, ptA.Y + offsetY)); } } } } private void pictureBox1_Paint(object sender, PaintEventArgs e) { this.pictureBox1.Image = null; Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height); Graphics g = Graphics.FromImage(bmp); Pen redPen = new Pen(Color.Red, 1 / g.DpiX); g.TranslateTransform(pictureBox1.Width / 5, pictureBox1.Height / 5); g.PageUnit = GraphicsUnit.Pixel; g.PageScale = 2.0F; for (int i = 0; i < pointIndex; i++) { g.DrawLine(Pens.Black, PointList.X, PointList.Y, PointList[i + 1].X, PointList[i + 1].Y); } pictureBox1.Image = bmp; } } } ----------------- grazie. |
|
|
|
|
 Posts:435
 |
| 29 Jan 2010 20:58 |
|
l'ultimo codice che ti ho incollato non da' nessun errore. L'ho provato ptima di postarlo.
Ora cerca di capire quello che ho fatto e di adattarlo a quello che vuoi ottenere tu.
Se sei ancora in difficoltà scrivi...
HTH Max.
|
|
|
|
|
 Posts:90
 |
| 29 Jan 2010 21:19 |
|
si sono ancora in difficolta, ma visual studio 2008 c# express , Mi dice sempre quell'errore lì. strano se dici a te ti funziona non saprei capire come mai? Mi protesti allegare il progetto.? Grazie mille. e a te ti ringrazio moltissimo. |
|
|
|
|
 Posts:435
 |
|
 Posts:90
 |
| 29 Jan 2010 21:40 |
|
cacchio max , ti ci credo che mi dava errore: perchè nel tuo c'è scritto cosi: List pt = new List(); e nel mio come vedi sopra. Ora provo se funziona |
|
|
|
|
 Posts:90
 |
|
 Posts:90
 |
| 29 Jan 2010 21:41 |
|
ho scoperto perchè il forum taglia < point f > prova a vedere incollare la riga che hai nel progetto e mettilo nel forum e vedi che taglia il forum grazie mille. |
|
|
|
|
 Posts:435
 |
| 29 Jan 2010 22:29 |
|
Ciao, ho fatto la modifica minima al progeto del sito (che poi era la cosa piu semplice da fare). ;-)
Te lo allego, questo funziona alla perfezione.
Ciao. Max.
|
Attachment: Tutorial5.zip
|
|
|
|
 Posts:90
 |
| 30 Jan 2010 11:55 |
|
ok, grazie ma avevo già modificato tutto come hai fatto te nel tutorial5 Grazie millle. PS: ti sei accorto che il forum alcune parole le taglia ad es , se metti la riga di codice dove mi dava errore, e copi quella che hai nel codice, leva i < point f > ?. Mi spieghi il motivo di questo forum? grazie mille. |
|
|
|
|
 Posts:90
 |
| 01 Feb 2010 21:47 |
|
allora, ti chiedo un favore grande... Mi protesti dire come far leggere le coordinate da un textbox chiamato txtInput. dopo avere caricato il file pippo.txt e mettere le coordinate nella textbox input. e da lì legge il valori e le simula quando faccio play?. grazie, mille |
|
|
|
|
 Posts:435
 |
| 02 Feb 2010 22:50 |
|
Ti chiedo scusa, ma in questo ultimo messaggio non ho proprio capito cosa vuoi fare.
Max
|
|
|
|
|
 Posts:90
 |
| 03 Feb 2010 21:28 |
|
scusa, ma ho lasciato perdere... Perchè non sono in grado di creare un'linguaggio da zero per i pantografi cnc. Però lo riprendo quando avrò più possibilità di farlo. comunque non fa nulla. ciao, e grazie per l'aiuto. |
|
|
|
|
 Posts:90
 |
| 04 Feb 2010 21:26 |
|
ok, riprendo questo mini progettino.. vorrei fare modo che una scelga il file dal menu File->Apri. E il codice viene visualizzato in una textbox. Dopo quando uno prova ad eseguire il codice invece di farlo dal file. Il programma lo legge in questo textbox, ed esegue tutte le coordinate che trova in quell textbox, Mi protesti se hai capito ora , allegare il progetto con la richiesta che ho fatto ora? grazie. Per domani ci sono verso le 10:00 alle 13:30 e dopo ci sono dopo le 19:00. Sperò che ora hai capito. |
|
|
|
|
 Posts:662
 |
| 05 Feb 2010 09:17 |
|
Per domani ci sono verso le 10:00 alle 13:30 e dopo ci sono dopo le 19:00. Sperò che ora hai capito. Gigi, sarebbe opportuno cercare di usare dei toni un po' meno "lavorativi". Le persone che aiutano sui forum lo fanno nella loro più completa autonomia, mettendo a disposizione il loro tempo per puro spirito di collaborazione e nessuno, dico nessuno, è obbligato nè a rispondere nè a trovare per forza delle soluzioni. Le community servono per dare un indirizzo sulle tecniche di programmazione, un orientamento su quelli che sono i possibili scenari ma mai devono e possono sostituirsi al bagaglio di conoscenze che un programmatore deve avere per potersi definire tale. Possono integrarlo, arricchirlo, stimolare le persone a battere nuove strade e per questo sono utili, ma personalmente non affiderei mai il mio lavoro esclusivamente ai consigli che posso trovare su una Community. Capisco che in molte occasioni il non trovare soluzioni possa provocare un po' di frustrazione e malcontento e che alla fine si entra talmente tanto in confidenza con il problema che anche le persone che ci possono aiutare vengono viste un po' come il collega della scrivania accanto, quindi, talvolta, prima di postare sarebbe più corretto rileggere ciò che si scrive e domandarsi se quanto sto per inviare sia anche formalmente corretto. Io avrei scritto lo stesso concetto con frasi un po' più adeguate del tipo: Grazie Max per l'aiuto che mi dai, sono entrato in un circolo vizioso e trovo difficoltà, senza esempi, a risolvere il problema che ho scritto. Tutto questo è ulteriormente limitato anche perchè per motivi (? personali, di lavoro, ecc...) sono presente davanti al PC solo in determinati orari, tipo domani dalle 10.00 alle 13.30 e dopo le 19.00. Sperando di averti chiarito bene i miei dubbi (in caso contrario chiedimi pure delucidazioni), non vedo l'ora di leggere la tua risposta. Grazie ancora.... Sicuramente avresti detto le stesse cose e avresti aiutato Max ad aiutarti ancora meglio. HTH Alberto. |
|
|
|
|
 Posts:90
 |
| 11 Feb 2010 14:53 |
|
Salve, si hai ragione...Alberto. Solo che scrivevo di fretta.. --------------------------------------- Mi spiego meglio volevo fare che quando uno deve aprire un file viene la finestra openfiledialog. e il codice che c'è dentro il file . lo mettesse in un textbox, ed dopo lo esegue con il tasto play del programma. Sperò di essermi spiegato bene. Grazie Alberto e Max. |
|
|
|
|
 Posts:435
 |
| 12 Feb 2010 16:03 |
|
In tal caso le modifche da fare sono poche:
1) inserire un dialog Openfile. 2) controllare il risultato del dialog, se annulla non fai iente, altrimenti passi il nome file alla procedura che legge il file txt (che abbiamo gia visto). 3) una volta che hai letto il file txt invece di processarlo "al volo" scrivi il contenuto in una textbox multiline che visualizzi sulla form. 4) alla pressione del tasto "play" esegui la procedura di disegno (che abbiamo visto gia' a posto) ma invece di leggere una collezione di oggetti (o array che sia) legge le righe della textbox.
comincia a fare questi punti e vediamo che problemi incontri.
HTH Max.
|
|
|
|
|
| You are not authorized to post a reply. |
|
Active Forums 4.1
|
|
|
|
|
Stampare Una DatagridView |
 |
Come utilizzare gli oggetti di stampa forniti dal framework per stampare il contenuto di una DatagridView con l'ausilio della GDI+ |
 |
|
2008/12/07 | Author: Andrea Zingoni
|
|
|
|
|
ASP.NET Authentication |
 |
How it works the ASP.NET authentication? let's discover it with a few samples. |
 |
|
2007/08/09 | Author: Rudy Azzan
|
|
|
|
|
|
|
|
|
|
|
|
|
|