نمایش نتایج 1 تا 25 از 25

نام تاپیک: کمک ،فرم login که ساختم یه مشکل داره؟

  1. #1
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231

    کمک ،فرم login که ساختم یه مشکل داره؟

    سلام دوستان
    من یه فرم login دارم که اطلاعات کاربر رو میگیره و اگه صحیح باشه بسته میشه اما ایراد اینه که اگه کاربر Alt+F4 بزنه بسته میشه و فرم اصلی رو نشون میده

  2. #2
    زمانی که فرم لوگین رو ShowDialog می کنی مقدار خروجیش رو چک کن
    اگر DialogResult.Cancel بود از بزنامه خارج شو
    آن لحظه که تنها اعتبار کسی که مساله ای را مطرح کرده است، شما را در اشتباه بودن ایده هایتان قانع کرد،
    آن لحظه،
    لحظه وداع شما با دنیای خلاقیت و پیشرفت خواهد بود. . .

    برنولی

  3. #3
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    میشه کد مربوطه رو بنویسید؟
    ممنون میشم. باید توی form load بنویسم؟
    ببخشید اگه تازه کارم

  4. #4
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    لطفا دوستان دست مارو بگیرند

  5. #5
    فکر میکنم بهتر باشه اگه کدی که نوشتید رو اینجا قرار بدید تا دوستان اون رو تصحیح کنند.
    ...مرا به خانه ام ببر، اگرچه خانه؛ خانه نیست

  6. #6
    کاربر دائمی آواتار ezamnejad
    تاریخ عضویت
    آبان 1386
    محل زندگی
    جلوي مانيتور
    پست
    257
    کنترل Button خاصیتی به نام DialogResult دارد که با تنظیم این خاصیت به یکی از مقادیر موجود ، در هنگام کلیک Button مقدار آن به فرم فراخواننده برگشت داده می شود . در صورتی که کاربر کلید ALT+F4 را از صفحه کلید فشار دهد مقدار برگشت داده شده Cancel خواهد بود .

    DialogResult dr;
    Form2 f=new Form2();
    dr = f.ShowDialog();
    if (dr == DialogResult.Cancel)
    {
    Code Here...
    }
    else
    {
    Code Here...
    }

    اگر قصد دارید کاربر امکان بستن فرم login را نداشته باشد از کد زیر استفاده کنید .

    private void Form2_FormClosing(object sender, FormClosingEventArgs e)
    {
    e.Cancel = true;
    }

  7. #7
    ممنون از ezamnejad که کدش رو گذاشتند
    در تکمیل صحبتهای دوستان :
    یک LoginControl هست که جناب
    Sinpin زحمتشو کشیدن تمام چیزهایی که لازم هست رو داره و می تونین به دلخواه خودتون امکاناتش رو تغییر بدین (در همین تالار جستجو کنین)
    این چند تا کلاس نمونه رو میتونین ببینین که چطور میشه از اون کنترل استفاده کرد
    یک فرم برای
    Login و فراخوانی اون در فرم ، کد مثال این دو فرم رو در قسمت ضمیمه به همراه فایل DLL همون کنترل گذاشتم.
    موفق باشید

    کدهای قسمت اعتبار سنجی کاربر بر اساس پسورد هش شده و ذخیره Log برنامه نوشته شده مطابق نیاز خود تغییر دهید
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله razavi_university : یک شنبه 08 اردیبهشت 1387 در 02:18 صبح
    آن لحظه که تنها اعتبار کسی که مساله ای را مطرح کرده است، شما را در اشتباه بودن ایده هایتان قانع کرد،
    آن لحظه،
    لحظه وداع شما با دنیای خلاقیت و پیشرفت خواهد بود. . .

    برنولی

  8. #8
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736
    نقل قول نوشته شده توسط captain_black81 مشاهده تاپیک
    لطفا دوستان دست مارو بگیرند
    جستجو: login C#‎ forum https://barnamenevis.org/showthread.php?t=94791
    آخرین ویرایش به وسیله اَرژنگ : یک شنبه 08 اردیبهشت 1387 در 13:12 عصر

  9. #9
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    ممنونم با e.cancel=true; حل شد اما یه مشکل جدیدی بوجود اومد
    وقتی کاربر رمز رو درست میزنه این دستور رو نوشتم :
    this.close()
    اما دوباره فرم main لود میشه و صفحه login دوم باز میشه
    چیکار کنم؟

  10. #10
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    آخه توی main فرم form1 لود میشه و توی form1_load نوشتم:
    loginform lf=new loginform()

  11. #11
    میتونی فرم اصلی رو نشون بدی و بعد فرم لوگین رو ShowDialog کنی. حالا هر زمانی که لوگین بسته بشه فرم اصلیت نشون داده می شه البته باید برای مقدار خروجی فرم لوگین شرط بگذاری تا همون مشکل اول پیش نیاد
    آن لحظه که تنها اعتبار کسی که مساله ای را مطرح کرده است، شما را در اشتباه بودن ایده هایتان قانع کرد،
    آن لحظه،
    لحظه وداع شما با دنیای خلاقیت و پیشرفت خواهد بود. . .

    برنولی

  12. #12
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    میشه نمونه کدشو برام بنویسی؟ ممنون میشم

  13. #13
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736
    بهترین روش که تا به حال دیدم: https://barnamenevis.org/showpo...15&postcount=8 روش دیگر (به خوبی روش بالا نیست): https://barnamenevis.org/showth...ighlight=login و از این روش پائینتر روشهایه آدامس و چوب اند که در شان برنامه نویس نیستند.

  14. #14
    میشه نمونه کدشو برام بنویسی؟ ممنون میشم

    using System;
    using System.Collections.Generic;
    using System.Windows.Forms;
    namespace TestLoginControl
    {
    static class Program
    {
    /// <summary>
    /// The main entry point for the application.
    /// </summary>
    [STAThread]
    static void Main()
    {
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(fals e);
    LoginForm login = new LoginForm();
    if (login.ShowDialog() == DialogResult.OK)
    Application.Run(new MainForm());
    }
    }
    }

    این کدی است که در برنامه بالا استفاده شده
    آن لحظه که تنها اعتبار کسی که مساله ای را مطرح کرده است، شما را در اشتباه بودن ایده هایتان قانع کرد،
    آن لحظه،
    لحظه وداع شما با دنیای خلاقیت و پیشرفت خواهد بود. . .

    برنولی

  15. #15
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    ممنون آقای razavi_university
    درست کار کرد اما loginform بسته نمیشه

  16. #16
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736
    نقل قول نوشته شده توسط captain_black81 مشاهده تاپیک
    ممنون آقای razavi_university
    درست کار کرد اما loginform بسته نمیشه
    https://barnamenevis.org/showpo...7&postcount=13

  17. #17
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    ممنون آقای razavi_university
    درست کار کرد اما loginform بسته نمیشه
    مشکل دیگه اینه که یه button گذاشتم توی loginform که اگه کاربر نتونست وارد شه برنامه رم ببنده، توی کلیکش نوشتم: application.exit()
    اما این دکمه کار نمیکنه

  18. #18
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736
    نقل قول نوشته شده توسط captain_black81 مشاهده تاپیک
    ممنون آقای razavi_university
    درست کار کرد اما loginform بسته نمیشه
    مشکل دیگه اینه که یه button گذاشتم توی loginform که اگه کاربر نتونست وارد شه برنامه رم ببنده، توی کلیکش نوشتم: application.exit()
    اما این دکمه کار نمیکنه
    https://barnamenevis.org/showpo...7&postcount=13

  19. #19
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    دقیقا لینکی که دادین به همین مشکل که رسیدن ولش کردن

  20. #20
    ممنون آقای razavi_university
    درست کار کرد اما loginform بسته نمیشه
    دوست عزیز شما یکبار لینک اولی که جناب آرژنگ گذاشتند رو ببینین و اجراش کنین مشکلوت حل میشه
    من هم کد همون رو واستون گذاشتم
    آن لحظه که تنها اعتبار کسی که مساله ای را مطرح کرده است، شما را در اشتباه بودن ایده هایتان قانع کرد،
    آن لحظه،
    لحظه وداع شما با دنیای خلاقیت و پیشرفت خواهد بود. . .

    برنولی

  21. #21
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    بسیار ممنون، حوصله تونو سر بردم.
    اون لینک خیلی پیچیده بود و چیزی دستگیرم نشد، بهر حال ممنون.
    من اطلاعات کاربر و پسورد رو روی SQL ذخیره میکنم

    private
    void button1_Click(object sender, EventArgs e)
    {
    string username = user.Text;
    string password = pass.Text;

    string command = "select max(permission) from users where username='" + username + "' and password='" + password+"'";
    string Cmname = "select max(name) from users where username='" + username + "' and password='" + password+"'";
    string person = "select max(id) from users where username='" + username + "' and password='" + password + "'";
    // SQL Query

    SqlConnection cnm = newSqlConnection();
    general g = newgeneral();
    cnm.ConnectionString = g.cnm;
    SqlCommand cm = newSqlCommand();
    cm.Connection = cnm;
    cm.CommandType =
    CommandType.Text;
    cm.CommandText = command;

    SqlCommand cn=newSqlCommand();
    cn.Connection=cnm;
    cn.CommandType=
    CommandType.Text;
    cn.CommandText=Cmname;
    SqlCommand cp = newSqlCommand();
    cp.Connection = cnm;
    cp.CommandType =
    CommandType.Text;
    cp.CommandText = person;

    object s;
    object n;
    object p;

    cnm.Open();
    s = cm.ExecuteScalar();
    n=cn.ExecuteScalar();
    p = cp.ExecuteScalar();
    cnm.Close();
    string value = Convert.ToString(s);
    string name= Convert.ToString(n);
    string perscode = Convert.ToString(p);
    if (value == "")
    {
    MessageBox.Show("شما مجاز به ورود به سیستم نمی باشید", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
    LoginCount = LoginCount + 1;
    if (LoginCount == 3)
    {
    Application.Exit();
    }
    }
    else

    {
    int permission = Convert.ToInt32(s);
    if (permission==1 || permission==2)
    {
    //MessageBox.Show("دمت گرم رخصت", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);

    label4.Text = name;
    this.Close();



    // kode shakhse vared shode ra dar registry mineshanad

    int regkey = Convert.ToInt32(perscode);
    Microsoft.Win32.
    Registry.CurrentUser.CreateSubKey(@"Software\kian\source");
    Microsoft.Win32.
    Registry.CurrentUser.CreateSubKey(@"Software\kian\source").SetValue("Pers Code", regkey);
    Microsoft.Win32.
    Registry.CurrentUser.CreateSubKey(@"Software\kian\source").Close();
    }
    else

    {
    }
    }
    }

  22. #22
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    اشکالاتشو بگید لطفا

  23. #23
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736
    نقل قول نوشته شده توسط captain_black81 مشاهده تاپیک
    اشکالاتشو بگید لطفا
    اولین اشکلاش این است که کدها را با هم قاطی کردید، مثالهایی که بهشان لینک فرستادم با لایه بندی کار میکنند، اگر با این طرز کد نویسی ادامه بدید ، کوچکتین مشکلتان همین مشکلی که باهاش برخوردید خواهد بود. کدها را از هم جدا کنید، به مباحث ۳ لایه برنامه نویسی نگاه بندازید، تمام کد را همینطوری نمیشه پشت یک باتن کلیک گذاشت.

  24. #24
    کاربر دائمی آواتار captain_black81
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    231
    چرا this.close کار نمیکنه؟
    من کد دوستمونو بصورت زیر استفاده کردم

    staticvoid Main()
    {
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);

    Login login = newLogin();
    if (login.ShowDialog() == DialogResult.OK)
    {
    Application.Run(newPartMain());
    }

    }

    ولی فرم partmain لود نمیشه
    یعنی چه اتفاقی باید بیافته که dialogresult.ok در ifدرست باشه؟

  25. #25
    كجا از This.close استفاده مي‌كني كه جواب نميده؟
    شايد مقدار OK رو برنمي‌گردوني
    اون لینک خیلی پیچیده بود و چیزی دستگیرم نشد، بهر حال ممنون.
    من كه دو فرم اصلي كه نياز داشتين رو گذاشتم ديگه كجاش پيچيده بود؟؟
    آن لحظه که تنها اعتبار کسی که مساله ای را مطرح کرده است، شما را در اشتباه بودن ایده هایتان قانع کرد،
    آن لحظه،
    لحظه وداع شما با دنیای خلاقیت و پیشرفت خواهد بود. . .

    برنولی

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •