مشکل پایگاه

فقق

Banned
من سوالی دارم من برنامه کلوپ فیلم نوشتم من اسم مشخصصات افراد را وارد می کنم در قسمت ثبت نام .خوب من در قسمت جستجو نرم افزارم می خوام اسم هایی که در دیتابیس ذخیره شده اند را جستجو کنم .مثال من سعید را می خوام. جستجو سعید را در data Greaw به من نشان می ده. خوب من می خوام در دیتا گریو روی سعید کلیک کنم وقسمت ثبت فیلم برای سعید را به من نشان بده .در این مورد من را راهنمایی کنید .ممنون

سوال بعدی من این است که من در picturebox یک عکس انتخاب می کنم و یک لیبل را روی picturebox قرار می دم در اینجا من می خوام رنگ پیش زمینه لیبل را از بین ببرم و فقط نوشته اش روی picturebox باشد چون اون رنگ خاکستری یا هر رنگی باعث پایین آمدن کیفیت کار می شود .


سوال آخر من یک نرم افزار کیبرد می نویسم خوب مثلا وقتی من روی انتر کلیک می کنم خوب کاری نمی کند من می خوامم ببینم چطور ارتباط بین این کیبرد را با برنامه های ویندوز برقرار کنم مثلا من می خوام در ورد از کیبرد نوشته شده استفاده کنم خوب باید یک ارتباطی بین این کیبرد با نرم افزار ورد باشد

ممنون >>>
 

the_king

مدیرکل انجمن
لطفا سوالاتی که بهم مربوط نیستند رو طبق قانون عمومی شماره B4 مجید آنلاین در تاپیک های جداگانه مطرح کنید
در ضمن زبان برنامه نویسی رو در عنوان سوال مشخص کنید.



من سوالی دارم من برنامه کلوپ فیلم نوشتم من اسم مشخصصات افراد را وارد می کنم در قسمت ثبت نام .خوب من در قسمت جستجو نرم افزارم می خوام اسم هایی که در دیتابیس ذخیره شده اند را جستجو کنم .مثال من سعید را می خوام. جستجو سعید را در data Greaw به من نشان می ده. خوب من می خوام در دیتا گریو روی سعید کلیک کنم وقسمت ثبت فیلم برای سعید را به من نشان بده .در این مورد من را راهنمایی کنید .ممنون
بهتره که یک فرم برای بخش ثبت فیلم کاربر طراحی کنید چون معمولا در فرمی که لیست کاربران نمایش داده میشه
هم جا برای ویرایش کردن اطلاعات کمه و هم DataGridView برای ویرایش کردن اطلاعات زیاد جای مانور نداره.
وقتی روی DataGrid یکبار یا دوبار کلیک کردید در رخداد مربوطه کدی رو خواهید نوشت که مشخص کنه که
در سطری که الان در DataGridView فعال است ستون مربوط به اسم کاربر (مثلا ستون Column1) چه مقداری داره :
کد:
            string username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();
بعد بر اساس username سطر هایی رو از جدول امانت فیلم ها در بانک اطلاعاتی استخراج می کنید که نام کاربر
مقدار مورد نظر باشه.

سوال بعدی من این است که من در picturebox یک عکس انتخاب می کنم و یک لیبل را روی picturebox قرار می دم در اینجا من می خوام رنگ پیش زمینه لیبل را از بین ببرم و فقط نوشته اش روی picturebox باشد چون اون رنگ خاکستری یا هر رنگی باعث پایین آمدن کیفیت کار می شود .
نیازی نیست که برای نمایش متن در PictureBox از Label استفاده کنید، روی PictureBox متن مورد نظر رو
ترسیم کنید. اول کد های زیر رو به فرم اضافه کنید :
کد:
[COLOR="Gray"]        private void Form1_Load(object sender, EventArgs e)
        {
[/COLOR]            pictureBox1.Paint += new PaintEventHandler(PaintText);
[COLOR="Gray"]        }[/COLOR]

        void PaintText(object sender, PaintEventArgs e)
        {
            PictureBox obj = (PictureBox)sender;
            if (obj.Tag == null) return;
            PointF position = new PointF(5, 5);
            e.Graphics.DrawString(obj.Tag.ToString(), this.Font, SystemBrushes.WindowText, position);
        }
و هر زمانی که خواستید متن PictureBox را در مشخصه Tag اش بنویسید :
کد:
            pictureBox1.Tag = "My Text";
            pictureBox1.Invalidate();

سوال آخر من یک نرم افزار کیبرد می نویسم خوب مثلا وقتی من روی انتر کلیک می کنم خوب کاری نمی کند من می خوامم ببینم چطور ارتباط بین این کیبرد را با برنامه های ویندوز برقرار کنم مثلا من می خوام در ورد از کیبرد نوشته شده استفاده کنم خوب باید یک ارتباطی بین این کیبرد با نرم افزار ورد باشد
ممنون >>>
می توانید از SendKeys استفاده کنید اما دکمه ها در بافر صفحه کلید قرار می گیرند، هر پنجره ای که فعال باشد،
این کلید ها را پردازش خواهد کرد، پس اگر بخواهید در برنامه Word دریافت شوند اول باید پنجره Word را فعال کنید.
کد:
            textBox1.Select();
            SendKeys.Send("abcde");
 

فقق

Banned
سوال؟

من برای پایگاه داده یک dataGre آوردم و روی آن کلیک کردم و در رویداد آن کد شما را نوشتم خوب چیزی اتفاق نیفتاد
من برای این کار یک صفحه به نام ثبت فیلم درست کردم خوب نام این صفحه را کجا باید وارد کرد این کد را یکم جامع توضیح دهید ؟؟؟؟
 

the_king

مدیرکل انجمن
من برای پایگاه داده یک dataGre آوردم و روی آن کلیک کردم و در رویداد آن کد شما را نوشتم خوب چیزی اتفاق نیفتاد
من برای این کار یک صفحه به نام ثبت فیلم درست کردم خوب نام این صفحه را کجا باید وارد کرد این کد را یکم جامع توضیح دهید ؟؟؟؟

توضیحاتی که نوشتم در حد جزئیاتی است که شما از پروژه تون دادید، طبیعتا وقتی توضیحاتی که در مورد پروژه
می دهید کلی است، امکان تشریح جزئیات نیست.

وقتی نام کاربر مشخص شد، متغیر اسم اش را به فرم مربوطه ارسال خواهید کرد و سپس فرم اش را
نمایش خواهید داد :
کد:
            Form2 f2 = new Form2();
            f2.username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();
            f2.ShowDialog();
            f2.Dispose();

در فرم مورد نظر متغیر username را تعریف خواهید کرد و در هنگام نمایش اش مشخصات کاربر را از فرم
استخراج خواهید کرد.
کد:
[COLOR="Gray"]    public partial class Form2 : Form
    {[/COLOR]
        public string username = "";

[COLOR="Gray"]        private void Form2_Load(object sender, EventArgs e)
        {[/COLOR]
            DataSetTableAdapters.RentTableAdapter adapter 
                = new DataSetTableAdapters.RentTableAdapter();
            DataTable table = adapter.GetData();
            DataRow[] rows = table.Select("Username='" + username + "'");
            if (rows.Length > 0)
            {
                textBox1.Text = rows[0]["Title"].ToString();
                textBox2.Text = rows[0]["Country"].ToString();
.
.
.
            }
[COLOR="Gray"]        }[/COLOR]

فراموش نکنید که در DataGridView مشخصه SelectionMode را روی FullRowSelect و مشخصه MultiSelect را
روی False تنظیم کنید تا کاربر همواره یک سطر را انتخاب کند.
 

فقق

Banned
مشکل؟

Form2 f2 = new Form2();
f2.username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();
f2.ShowDialog();
f2.Dispose();

تو رو خدا ببخشید مثل آماتور رفتار می کنم چون واقعا گیر کردم.من دو بار روی datagrew کلیک می کنم و در رویداد آن کد

string username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();

را می نویسم .این را بگم من یک فرم دارم به نام لیست ثبت نام که آن جا موارد ثبت و حذف و... را دارد و یک فرم دیگر به نام اتصال که آن جا یک تکست و یک دیتا گریو دارد برای جستجو در دیتا موجود در لیست ثبت نام که به درستی اجرا می کتد در این مورد مشکلی نیست .خوب من در دیتا گریو فرم اتصال روی آن کلیک و این کد را می نویسم
string username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();

راستی من به جای Column1 ...من name که اولین فیلدم است را می نویسم خوب من یک فرم دیگر برای ثبت فیلم به نام form2 را ایجاد کرده .سوال من این است که این کد :

Form2 f2 = new Form2();
f2.username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();
f2.ShowDialog();
f2.Dispose();
را باید در FORM2 نوشت که در این صورت username را نمی شناسد .و اگر من این کد را در فرم اتصال بریزم username را باز نمی شناسد مگر اینکه من کد :

string username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();

در بلاترین کلاس فرم است آنجا بریزم متغییر username را می شناسد .مشکل اینجاست که dataGrew را دیگر در متغییر username نمی شناسد .
مشکل چیست کمکم کنید
ممنون <<<<
 

the_king

مدیرکل انجمن
Form2 f2 = new Form2();
f2.username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();
f2.ShowDialog();
f2.Dispose();

تو رو خدا ببخشید مثل آماتور رفتار می کنم چون واقعا گیر کردم.من دو بار روی datagrew کلیک می کنم و در رویداد آن کد

string username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();

را می نویسم .این را بگم من یک فرم دارم به نام لیست ثبت نام که آن جا موارد ثبت و حذف و... را دارد و یک فرم دیگر به نام اتصال که آن جا یک تکست و یک دیتا گریو دارد برای جستجو در دیتا موجود در لیست ثبت نام که به درستی اجرا می کتد در این مورد مشکلی نیست .خوب من در دیتا گریو فرم اتصال روی آن کلیک و این کد را می نویسم
string username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();

راستی من به جای Column1 ...من name که اولین فیلدم است را می نویسم خوب من یک فرم دیگر برای ثبت فیلم به نام form2 را ایجاد کرده .سوال من این است که این کد :

Form2 f2 = new Form2();
f2.username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();
f2.ShowDialog();
f2.Dispose();
را باید در FORM2 نوشت که در این صورت username را نمی شناسد .و اگر من این کد را در فرم اتصال بریزم username را باز نمی شناسد مگر اینکه من کد :

string username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();

در بلاترین کلاس فرم است آنجا بریزم متغییر username را می شناسد .مشکل اینجاست که dataGrew را دیگر در متغییر username نمی شناسد .
مشکل چیست کمکم کنید
ممنون <<<<
دو کد مجزا نوشته بودم، کد اول رو باید در همان رخداد دوبار یا یکبار کلیک کردن روی DataGridView بنویسید
تا username رو از داخلش برداره و به فرم 2 ارسال کنه و فرم 2 را نمایش بده :
کد:
[COLOR="Gray"]        private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {[/COLOR]
            if ((e.ColumnIndex < 0) || (e.RowIndex < 0) || (e.RowIndex == dataGridView1.Rows.Count))
            {
                return;
            }
            Form2 f2 = new Form2();
            f2.username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();
            f2.ShowDialog();
            f2.Dispose();
[COLOR="Gray"]        }[/COLOR]

کد دوم را هم در فرم 2 خواهید نوشت، متغیر username در ابتدای اون کد معرفی شده بود :
کد:
[COLOR="Gray"]    public partial class Form2 : Form
    {[/COLOR]
[COLOR="Blue"][B]        public string username = "";[/B][/COLOR]
.
.
.
 

فقق

Banned
حل مشکل

من یکم فکر کردم و به این نتیجه رسیدم :
string username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();

و
Form2 f2 = new Form2(); f2.username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString(); f2.ShowDialog(); f2.Dispose();

را در کد رخداد dataGrid هر دو را با هم قرار دهیم نظرتون چیست




 

the_king

مدیرکل انجمن
من یکم فکر کردم و به این نتیجه رسیدم :
string username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString();

و
Form2 f2 = new Form2(); f2.username = dataGridView1.SelectedRows[0].Cells["Column1"].Value.ToString(); f2.ShowDialog(); f2.Dispose();

را در کد رخداد dataGrid هر دو را با هم قرار دهیم نظرتون چیست




هیچ نیازی به اولی نیست، دومی نمونه تکمیل شده کد اول است، در کد اول مقدار در یک متغیر محلی username
قرار می گیره، اما وقتی در کد دومی مستقیما مقدار در متغیر داخل فرم 2 ثبت میشه دیگه نیازی به این متغیر محلی
نیست.
 

جدیدترین ارسال ها

بالا