راستش فكر كنم بايد به طور كامل c# رو ياد بگيرم ولي اصلا وقت ندارم . ممنوم كه جواب سوالم رو داديد .
راستش فكر كنم بايد به طور كامل c# رو ياد بگيرم ولي اصلا وقت ندارم . ممنوم كه جواب سوالم رو داديد .
سلام
باز من يك سوال دارم
راستش مي خوام وقتي رو ي button1 كليك مي كنم عكس مورد نظرم display بشه .
و در اصل تابعonpaintرو به صورتي دستي فراخواني كنم !
دوباره سلام.
ميتونيد از كد زير استفاده كنيد.
pb يك pictureBox هست.
در ضمن براي call كردن OnPaint كافي از Invalidate استفاده كنيد.کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
هر بار كه از اين متود استفاده كنيد OnPaint كنترل مورد نظر رو دوباره نقاشي ميكنه.
ممنون از پاسختون .
ببینید راهی برای بهتر نوشتن این کد دارید
**************************************
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsApplication29
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
protected override void OnPaint(PaintEventArgs e)
{
Rectangle rect = new Rectangle(0, 0, 2048, 2048);
e.Graphics.DrawImage(ima.ime1.sjd(), rect);
}
}
}
namespace ima
{
class ime1
{
public static Bitmap sjd()
{
int j, c, l;
l = 0;
FileStream fs = File.Open("c:\\b1.dat", FileMode.Open);
Bitmap res = new Bitmap(2048, 2048);
Color cc;
for (j = 0; j < 2048; j++)
for (c = 0; c < 2048; c++)
{
int re = fs.ReadByte();
cc = Color.FromArgb(re,re,re);
res.SetPixel(c, j, cc);
l++;
}
fs.Close();
return res;
}
}
}
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)