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

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

 

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

mat00
.NET › graficke objekty c#
25. 4. 2011   #141239

Ahojte, ja by som mal tiez otazku. Mam za ulohu vyplnanie pravouhlej oblasti(obdlznika) semienkovym riadkovym algoritmom. S cim si neviem rady, to je vykreslenie toho obdlznika. TU je moj kod:

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;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
Bitmap pozadie;







public Form1()
{
InitializeComponent();


}
System.Drawing.Rectangle obdlznik = new Rectangle( );



private void Program(object sender, EventArgs e)
{
pozadie = new Bitmap(pictureBox1.Width, pictureBox1.Height);
Graphics GFX = Graphics.FromImage(pozadie);

}

private void Bod_X_TextChanged(object sender, EventArgs e)
{

}

private void Bod_Y_TextChanged(object sender, EventArgs e)
{

}

private void Bod_A_TextChanged(object sender, EventArgs e)
{

}

private void Bod_B_TextChanged(object sender, EventArgs e)
{

}



private void Rozmery(object sender, EventArgs e)
{

if (Bod_A.Text != string.Empty && Bod_B.Text != string.Empty)
{
int a;
int b;
a = Convert.ToInt32(Bod_A.Text);
b = Convert.ToInt32(Bod_B.Text);
Size s = new Size(a, b);
obdlznik.Size = s;
MessageBox.Show("Rozmery boli nastavene.");

}
else
MessageBox.Show("Zadajte prosim hodnoty.");

}




private void pictureBox1_Click(object sender, MouseEventArgs e)
{
switch (e.Button)
{
case MouseButtons.Right:
{
Size s = new Size();
s = obdlznik.Size;
Point p = new Point();
p = obdlznik.Location;
Graphics GFX = this.pictureBox1.CreateGraphics();
Pen pero = new Pen(System.Drawing.Color.Black, 1f);
Rectangle rect = new Rectangle(p,s);
GFX.DrawRectangle(pero, rect);
Size d = new Size();
d = obdlznik.Size;
MessageBox.Show("current size \n" + "Height:" + s.Height.ToString() + "Width:" + s.Width.ToString());
}
break;
case MouseButtons.Left:
{
int x = 0;
int y = 0;
x = Cursor.Position.X;
y = Cursor.Position.Y;
Point p = new Point(x, y);
obdlznik.Location = p;
MessageBox.Show("Pociatocny bod bol nastaveny.");
}
break;

}
}


}
}


Je to este len velmi zaciatocny kod. Neviem si rady konkretne s tymto: System.Drawing.Rectangle obdlznik = new Rectangle( );
Vstupne hodnoty sa maju zadavat cez Textbox. Ked do zatvorky zapisem hodnoty, tak mi to vykresli obdlznik, ale ked sa pokusam hodnoty ziskat z Textboxu, tak mi nic nepriradi. Vedel by mi niekto pomoct? Pripadne nejaky jednoduchejsi sposob ziskania rozmerov obdlznika? DAkujem vopred

jobes
Mikrokontroléry › AD prevodnik
11. 7. 2009   #111718

diki funguje je super :) sa to nesutali na hodnote ked dam konstantny odpor ale skace to okolo jednej hodnoty, ale to nevadi, taka nepresnost je OK

velmi pekne diki

jobes
Mikrokontroléry › AD prevodnik
11. 7. 2009   #111703

takze nastavil som to takto:
DDRA=0;
PORTA=0;
ADMUX=0;
ADCSRA=0xC0;
cakal som 5 milisekund
nacital som udaje:

ADCSRA==0x90
ADCL==ff;
ADCH==3;(tj 1023)
o 3 sekundy sa cely cyklus opakoval
zapojenie atmelu: na VCC som pripojil AREF a AVCC. PA0 som pripojil na VCC potom na GND ale stale som mal 1023 na vystupe (pri zapojeni na GND som cakal 0)... dokonca po odpojeni AREF od VCC mi to robilo to iste (stale som mal 1023 v ADCL a ADCH)

co som zle nastavil?
diki

jobes
Mikrokontroléry › AD prevodnik
10. 7. 2009   #111687

diki... ale to prerusenie nebude mozne pretoze mi spadne komunikacia cez usb (V-USB).

takze DDRA=0;
PORTA=0;
ked meriam odpor tak neni jedno odkial berem referenciu? nech je natie hocijake odpor sa nemeni iba prud a ten priamoumerne od odporu takze by to malo ukazovat odpor spravne stale, nie?

takze staci nastavit ADMUX a ADCSRA a uz to bude konvertovat?

diki

jobes
Mikrokontroléry › AD prevodnik
10. 7. 2009   #111675

dobry den ako mam nastavit registre (DDRA, PORTA, ADMUX, ADCSRA) ked chcem s PA0 co najpresnejsi prevod? budem merat odpor.
a este ako dlho to bude trvat (milisekundy)?

diki

 

 

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