Rysowanie lini

0

Witam
Przeszukałem troche forum ale niestety nie znalazłem tego co by mnie interesowało...
Chodzi mi o prodty program do narysowania dwóch prostych przecinających się...po prostu taki duży " X ".
Wiem że nie jest to skomplikowany program i osobie która ma na codziń styczność z c# nie bedzie stanowił problemu...Prosiłbym o napisanie tego programu naprwde jak dla debila...na codzień nie mam stycznosci z c# a musze takie coś napisać...
Bede wdzięczny za pomoc...

na wszelki wypadek moje gg: 4979789 mail: [email protected]

pozdrawiam

0

hmm...doszedłem do czegoś takiego ...problem polega że nie chce sie skompilowac...wyskakuje błąd linii nr 4...mógłby ktoś wrzucić na kompilator i pomóc ??

namespace iks
{
using system.drawing.drawing2d;
graphics g= new graphics.fromimage(picturebox.image);

Try{ 
g.drawline(Pens.Black,10,10,40,40); 
g.drawline(Pens.Black,40,10,10,40); 
}finally{ 
g.Dispose(); 
picturebox.refresh;
}
}
0

try, nie Try, w komunikacie zapewne bylo to wskazane.
//edit
@down: fakt, przysnalem, cala reszta malo sensowna ;)

0

Cały kod jest po prostu zły.
Tutaj masz gotowy przykład dla zdarzenia Form1_Paint :

private void Form1_Paint(object sender, PaintEventArgs e)
        {
          
            Graphics g = e.Graphics;
            Pen p = new Pen(Color.Black);
            g.DrawLine(p, 30, 30, 100, 80);
            g.DrawLine(p, 100, 30, 30, 80);
        }
0

robie tak...nowy projekt->aplikacja windows->potem picturebox
wrzucam ten kod do kompilatora i wyskakują błedy w 2, 6, 9 lini...</quote>

0

Nie mozesz tak sobie wrzucac kodu byle gdzie, tym bardziej niepoprawnego w kazdym calu (brak klasy, brak metody, pomylki malych i duzych liter, itp). Zrob tak jak sugeruje Czarek_777 - wrzuc ten kod do klasy Twojej formatki (zapewne Form1 wlasnie) i powinno dzialac. Do tego upewnij sie, ze zdarzenie Paint formatki jest podpiete do tej metody.

0

zacząłem nauke tego c# 3 dni temu...nie do końca jeszcze rozumiem...mógłbyś podać jak to ma wygladać ?? byłbym wdzięczny...

0

Zakladam, ze uzywasz visuala. Klikasz na formatke, czyli stworzone okienko programu. Po prawej stronie masz zakladke/panel Properties, tam dajesz na Events. Klikasz dwa razy na zdarzenie OnPaint i przeniesie Cie do kodu. Tam wklejasz kod podany przez Czarek_777 - oczywiscie cialo metody przez niego podanej.

0

http://ssikora.nazwa.pl/iks2.jpg ->->-> tak to wygląda sam zobacz...

0

Co jest ponizej? Wklej cala tresc pliku Form1.cs

PS. Zacznij moze nauke od podstaw, a nie wklejania kodu gdzie popadnie. W zadnym chyba jezyku to nie przejdzie.

0

poniżej nie ma nic...

co do nauki od podstaw to jest tak że wykładowca od Algorytmów i struktór danych wymyślił sobie coś takiego...jestem na etapie programowania w c++ a ten c# to "bonus" wiec sam rozumiesz...mało czasu i trzeba to zrobić...
wiec napisałem tyle ile udało mi sie wymyslic...

0

Czy przed wklejeniem kodu cos z pliku .cs usuwales? Bo to nie powinno tak wygladac.

0

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

    private void Form1_Load(object sender, EventArgs e)
    {

    }
}

coś takiego tam było...nie zmienia to faktu że nawet po zostawieniu tego występują dalej te trzy błędy które tam sa opisane...

0

Ech.. Jezeli nie rozumiesz kodu, to go nie usuwaj.

1.Przywroc wersje oryginalna
2. Zrob to co napisalem dokladnie tak jak napisalem.
3. Po kliknieciu w opisanej przeze mnie zakladce w kodzie powinna pojawic sie nowa metoda (zostaniesz przeniesiony do kodu).
4. Tam wklej cialo metody podanej przez Czarek_777 - cialo, czyli to co pomiedzy klamrami.

0

ok...dzieki wielkie za pomoc...jutro wezme się za to...jak by coś szło nie tak ( mam nadzieje że nie bedzie tak ) to bede pisał...

Pozdrawiam

EDIT:

Robiąc tak jak mówisz powstaje coś takiego...

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace Form1_Paint
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void pictureBox1_Click(object sender, EventArgs e)
        {

        }
    }
}

i gdzie wkleić teraz ten kod do rysowania...??

private void Form1_Paint(object sender, PaintEventArgs e)
        {
          
            Graphics g = e.Graphics;
            Pen p = new Pen(Color.Black);
            g.DrawLine(p, 30, 30, 100, 80);
            g.DrawLine(p, 100, 30, 30, 80);
        }
0
johny_bravo napisał(a)

Ech.. Jezeli nie rozumiesz kodu, to go nie usuwaj.

1.Przywroc wersje oryginalna
2. Zrob to co napisalem dokladnie tak jak napisalem.
3. Po kliknieciu w opisanej przeze mnie zakladce w kodzie powinna pojawic sie nowa metoda (zostaniesz przeniesiony do kodu).
4. Tam wklej cialo metody podanej przez Czarek_777 - cialo, czyli to co pomiedzy klamrami.

Udało sie...generalnie wszystko robiłem dobrze...błąd był w kodzie napisanym przez Czarek_777
Powinno być tak:

Graphics g = pictureBox1.CreateGraphics();
            Pen p = new Pen(Color.Black);
            g.DrawLine(p, 30, 30, 200, 200);
            g.DrawLine(p, 200, 30, 30, 200);

Niemniej, wielkie dzięki za pomoc

0

Nie blad, tylko inne podejscie ;) On rysowal po oknie, Ty rysujesz po obrazku zawartym w PictureBox.

0

hehe...tak daleko moja wiedza nie sięga zwracam honor :) ... ważne że działa...rysuje se właśnie okręgi, prostokąty i takie tam :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1