Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Заполнение массиваСтр 1 из 2Следующая ⇒
API окно заголовок case WM_LBUTTONUP: SetWindowText(hWnd, L" New "); break; case WM_KEYDOWN: { int new_x = 10; int new_y = 10; int Width = 100; int Height = 100; MoveWindow(hWnd, new_x, new_y, Width, Height, TRUE); } break; BOOL SetWindowPos(HWND hwnd, int y, //новая координата верхнего края int cx, //новая ширина int cy, //новая высота UINT uFlags); //флажок позиционирования
Проект MFC #include < afxwin.h> class CMyMainWnd: public CFrameWnd { public: CMyMainWnd(){ //конструктор Create(NULL, L" My title"); }
afx_msg void OnLButtonDown(UINT, CPoint); afx_msg void OnRButtonDown(UINT, CPoint); afx_msg void OnKeyDown(UINT, UINT, UINT); afx_msg void OnPaint(); DECLARE_MESSAGE_MAP() }; BEGIN_MESSAGE_MAP(CMyMainWnd, CFrameWnd) ON_WM_LBUTTONDOWN() ON_WM_RBUTTONDOWN() ON_WM_PAINT() ON_WM_KEYDOWN() END_MESSAGE_MAP() class CMyApp: public CWinApp{ public: CMyApp(){}; //конструктор virtual BOOL InitInstance(){ m_pMainWnd = new CMyMainWnd(); m_pMainWnd -> ShowWindow(SW_SHOW); return TRUE; } }; CMyApp theApp; void CMyMainWnd:: OnLButtonDown(UINT, CPoint){ AfxMessageBox(L" Левая кнопка мыши");
}
void CMyMainWnd:: OnRButtonDown(UINT, CPoint){
SetWindowText(L" Правая кнопка мыши"); }
void CMyMainWnd:: OnKeyDown(UINT ch, UINT, UINT){ CPaintDC dc(this); CRect rect; GetWindowRect(& rect); int w=rect.Width(); int h=rect.Height(); int l=rect.left; int t=rect.top; switch (ch) { case 0x25: l -= 10; break; case 0x26: t -= 10; break; case 0x27: l += 10; break; case 0x28: t += 10; break; case 0x31: w += 10; h +=10; break; case 0x32: w -= 10; h -=10; break; default:; break; } MoveWindow(l, t, w, h, 1);
}
void CMyMainWnd:: OnPaint() { CPaintDC* pDC = new CPaintDC(this); pDC -> Rectangle(5, 5, 50, 50); }
График Picturebox TextBox RadioButton using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Drawing.Drawing2D;
namespace l3 { public partial class Form1: Form { Pen pen = new Pen(Color.Black); //цвет линий Pen pen1 = new Pen(Color.Black); //цвет точек Brush br; private double[] d, d2; int size;
void cos(double start, double end, double step) { try { int Points_num; if (((end - start) % step) > 0) Points_num = Convert.ToInt32((end - start) / step); else Points_num = Convert.ToInt32(((end - start) / step) + 1); if (Points_num < = 1) throw new Exception(); int j = 0; double pos = start; d = new double[Points_num]; d2 = new double[Points_num]; while (j < d.Length) { d[j] = Math.Cos(pos); d2[j] = pos; j++; pos += step; };
// графическая поверхность Graphics g = graphWind.CreateGraphics();
// шрифт подписей данных Font dFont = new Font(" Tahoma", 9);
// ** заголовок ** // шрифт заголовка Font hFont = new Font(" Tahoma", 14, FontStyle.Regular); string header = " График Косинуса";
// ширина области отображения текста int w = (int)g.MeasureString(header, hFont).Width;
int x = (this.ClientSize.Width - w) / 2;
g.DrawString(header, hFont, System.Drawing.Brushes.Black, x, 5);
/* * область построения графика: * - отступ сверху - 100; * - отступ снизу - 30; * * - отступ слева - 30; * - отступ справа - 30. * * ClientSize - размер внутренней области окна * * график строим в отклонениях от минимального * значения ряда данных, так, чтобы он занимал * всю область построения */
// расстояние между точками графика (шаг по Х) int sw = (int)((this.graphWind.Width - 60) / (d.Length - 1));
double max = d[0]; // максимальный эл-т массива double min = d[0]; // минимальный эл-т массива
for (int i = 1; i < d.Length; i++) { if (d[i] > max) max = d[i]; if (d[i] < min) min = d[i]; }
// рисуем график int x1, y1, x2, y2;
if (radioButton6.Checked) {
// первая точка x1 = 20; y1 = this.graphWind.Height - 30 - (int)((this.graphWind.Height - 100) * (d[0] - min) / (max - min)); int y_min = this.graphWind.Height - 30 - (int)((this.graphWind.Height - 100) * (min - min) / (max - min));
// маркер первой точки g.DrawRectangle(pen1, x1 - 2, y1 - 2, size, size);
// подпись численного значения первой точки if (checkBox1.Checked) g.DrawString(Convert.ToString(d[0]), dFont, System.Drawing.Brushes.Black, x1 - 10, y1 - 30);
if (checkBox2.Checked) { g.DrawRectangle(pen, x1, y_min, 2, 3); g.DrawString(Convert.ToString(d2[0]), dFont, System.Drawing.Brushes.Black, x1 - 10, y_min + 10); }
// остальные точки for (int i = 1; i < d.Length; i++) {
x2 = 8 + i * sw; y2 = this.graphWind.Height - 30 - (int)((this.graphWind.Height - 100) * (d[i] - min) / (max - min));
// маркер точки g.DrawRectangle(pen1, x2 - 2, y2 - 2, size, size);
//Рисуем ось if (checkBox2.Checked) { g.DrawRectangle(pen, x1, y_min, 2, 3); g.DrawLine(pen, x1, (graphWind.Height + 50) / 2 /*y_min*/, x2, (graphWind.Height + 50) / 2/*y_min*/); // подпись численного значения
//g.DrawString(Convert.ToString(d2[i]), // dFont, System.Drawing.Brushes.Black, // x2 - 10, ((int)graphWind.Height+50) / 2/*y_min*/ + 10); }
// соединим текущую точку с предыдущей g.DrawLine(pen, x1, y1, x2, y2);
// подпись численного значения if (checkBox1.Checked) g.DrawString(Convert.ToString(d[i]), dFont, System.Drawing.Brushes.Black, x2 - 10, y2 - 30);
x1 = x2; y1 = y2; } } if (radioButton7.Checked) { int height;
// первая точка x1 = 20; y1 = this.graphWind.Height - 30 - (int)((this.graphWind.Height - 100) * (d[0] - min) / (max - min));
int y_min = this.graphWind.Height - 30 - (int)((this.graphWind.Height - 100) * (min - min) / (max - min));
height = y_min - y1;
br = new SolidBrush(pen1.Color);
g.FillRectangle(br, new Rectangle(x1 - sw / 4, y1, sw / 2, height + 2));
// подпись численного значения первой точки if (checkBox1.Checked) g.DrawString(Convert.ToString(d[0]), dFont, System.Drawing.Brushes.Black, x1 - 10, y1 - 30);
if (checkBox2.Checked) {
// подпись численного значения g.DrawString(Convert.ToString(d2[0]), dFont, System.Drawing.Brushes.Black, x1 - 10, y_min + 5); }
// остальные точки for (int i = 1; i < d.Length; i++) {
x2 = 8 + i * sw; y2 = this.graphWind.Height - 30 - (int)((this.graphWind.Height - 100) * (d[i] - min) / (max - min));
height = y_min - y2;
g.FillRectangle(br, new Rectangle(x2 - sw / 4, y2, sw / 2, height + 2));
// подпись численного значения if (checkBox1.Checked) g.DrawString(Convert.ToString(d[i]), dFont, System.Drawing.Brushes.Black, x2 - 10, y2 - 30);
if (checkBox2.Checked) {
// подпись численного значения g.DrawString(Convert.ToString(d2[i]), dFont, System.Drawing.Brushes.Black, x2 - 10, y_min + 5); }
x1 = x2; y1 = y2; } }
} catch { MessageBox.Show(" Возможно не верные данные! ", " Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public Form1() { InitializeComponent(); Thickness.Text = " 1"; Point_size.Text = " 1"; }
private void Form1_Load(object sender, EventArgs e) {
}
private void checkBox2_CheckedChanged(object sender, EventArgs e) {
}
private void label5_Click(object sender, EventArgs e) {
}
private void button3_Click(object sender, EventArgs e) { try { if (Thickness.Text! = null) pen.Width = Convert.ToInt32(Thickness.Text); if (Point_size.Text! = null) size = Convert.ToInt32(Point_size.Text); graphWind.Refresh(); cos(Convert.ToDouble(textBoxStart.Text), Convert.ToDouble(textBoxEnd.Text), Convert.ToDouble(textBoxStep.Text)); } catch { MessageBox.Show(" Возможно не достаточно данных, или не верный формат! ", " Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
private void button1_Click(object sender, EventArgs e) { colorDialog1.AllowFullOpen = false;
colorDialog1.ShowHelp = true;
colorDialog1.Color = pen.Color;
if (colorDialog1.ShowDialog() == DialogResult.OK) pen.Color = colorDialog1.Color;
}
private void Point_color_chise_Click(object sender, EventArgs e) { colorDialog1.AllowFullOpen = false;
colorDialog1.ShowHelp = true;
colorDialog1.Color = pen.Color;
if (colorDialog1.ShowDialog() == DialogResult.OK) pen1.Color = colorDialog1.Color;
}
private void button2_Click(object sender, EventArgs e) {
}
private void textBox3_TextChanged(object sender, EventArgs e) {
}
} } Заполнение массива listBox1 listBox2 label1 label2 label3 label4 namespace lab3 { public partial class Form1: Form { Random rnd = new Random(); int[] A = new int[10]; int I; int Max; public Form1() { InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) { listBox1.Items.Clear(); listBox2.Items.Clear(); //заполнение массива for (I = 0; I < A.Length; I++) { A[I] = rnd.Next(100); listBox1.Items.Add(Convert.ToString(I)); listBox2.Items.Add(Convert.ToString(A[I])); } //поиск максимального элемента Max = 0; A[Max] = A[0]; for (I = 1; I < A.Length; I++) { if (A[I] > A[Max]) { A[Max] = A[I]; Max = I; } } label1.Text = Convert.ToString(Max); label2.Text = Convert.ToString(A[Max]); } } }
|