تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 14

نام تاپيک: یه Error ، سوال در مورد کامپوننت و ListIndex

  1. #1
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض یه Error ، سوال در مورد کامپوننت و ListIndex

    1- می خوام یه برنامه درست کنم که توش روز های هفته وجود داشته باشه . وما بتونیم توش یه روز رو انتخاب کنیم و در اون روز یه ساعتی رو
    قرار بدیم که یه هشداری رو به ما نشون بده . مثلا روز یک شنبه ساعت 22:30 به ما پیغام بده.
    2- من کد زیر رو توی یه دکمه مینویسم ولی اررو میده چیکارکنم؟
    Dim y, m, d As Integer
    Dim a As Date
    y = 1433
    m = 2
    d = 29
    a = CDate(y & "/" & m & "/" & d)
    Me.Text = a
    ارور :
    Conversion from string "1433/2/29" to type 'Date' is not valid.
    3- در ساخت کامپوننت اگه بخواهیم یه متنی رو برای کاربر برگردونیم چه کار باید بکنیم؟
    مثلا کد زیر :
    Label1.text=NameComponent.Title
    با اجرای کد زیر متن "ABCDEFG" توی یک لیبل بره.
    4- متد ListIndex که در ListBox , ComboBox بود . در ویبی 2008 چه طور به دست میاد؟

  2. #2
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    سلام دوست عزیز تاریخی که وارد کردین VS اونو از نوع میلادی تعریف میکنه.
    و ماه دوم میلادی بیشتر از 28 روز نیست و شما اونو 29 دادید برای همین خطا میده.
    موفق باشید.

  3. #3
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    بله ممنون. ولی چیکار کنم که درست بشه .
    در ضمن ممنون میشم اگه سوالات دیگه رو هم پاسخ بدید

  4. #4
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    سلام/ببخشید سوالات دیگه تونو ندیدم.
    جواب سوال سوم:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    4.SelectedIndex

    شما نمیتونین همچین کاری کنین که تاریخ رو به صورتی وارد کنید که اشتباه باشه مثل این میمونه که بخواین یک string رو توی integer بریزین.

  5. #5
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    خوب پس میشه یه تابع معرفی کنین که تاریخ شمسی رو دریافت کته و تاریخ قمری همون روز رو از نوی Date بده بیرون.

    و اینکه می خوام در رویداد MouseHover یک کنترل کد زیر رو بذارم.Dim p2 As New System.Drawing.Point(X,Y)در واقع من یه کنترل Tooltip دارم که یه مقدار از نوع System.Drawing.Point که در اونجا نشون داده بشه . و من از کد بالا استفاده کردم.وقتی که مقدار X و Y رو قرار میدم کنترل توول تیپ در نقطه 0 و0 مانیتور نشون داده میشه . میخوام بدونم چه جوری می تونم . نقطه ی X , Y ماوس رو پیدا کنم و به جای X,y کد بالا قرار بدم.

    البته در وی بی 2008 چه طور میشه اعداد تصادفی بین 0 تا 6 رو ایجاد کرد با ویزگی های زیر :
    الف) هر بار که فرم رو اجرا می کنیم اعداد مثل هم در نیایند .مثلا وقتی فرم اجرا میشه و ما دستور رو در یک دکمه نوشته ایم و وقتی که 4 بار دکمه ی مربوطه رو فشار دادیم اعداد به ترتیب از راست به چپ ایجاد شد . 4 3 3 1
    اونوقت وقتی فرم رو بستیم و اجرا رو متوقف کردیم . و دوباره فرم رو اجرا کردیم و 4 بار روی دکمه کلیک کردیم دیگه اعداد مثل قبل تولید نشه و مثل قبل اعداد 4 3 3 1 رو تولید نکنه .
    ب ) وقتی که روی دکمه کلیک کردیم و مثلا عدد 4 رو تولید کرد . سپس روی دکمه دوباره کلیک میکنیم . دیگه همون عدد 4 نیاد و یه عدد دیگه بیاد یا اینکه اگه دوبار یه عدد پشت سر هم تولید شد برای بار دوم عدد رو رد کنه و یه عدد دیگه تولید کنه .

    و همین طور از پاسخ دادن به سوالات قبلی نیز از شما متشکرم
    Last edited by shadmehrshadow1; 20-05-2010 at 10:29.

  6. #6
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    من از طریق کلاس زیر در ویبی 6 ائقات شرعی رو حساب میکردم میشه این کد رو به ویبی 2008 برایم بذارید .یا اصلا یه پروزه محاسبه اوقات شرعی در ویبی 2008 بذارید .

    Private lgs()
    Private lats()
    Private Type Behzad
    XX As Double
    YY As Double
    End Type
    Const PI As Double = 3.14159265358979
    Private Sub Init()
    End Sub
    Public Sub ProcessALL(m As Double, d As Double, lg As Double, lat As Double, AzanSOb As String, Toloe As String, AzanZohr As String, Ghoroob As String, Maghreb As String)
    Dim ep As Behzad, zr As Double, delta As Double, ha As Double
    Dim t1 As Double, t2 As Double, t3 As Double, t4 As Double
    m = m + 1
    d = d + 1
    ep = sun(m, d, 4, lg)
    zr = ep.XX
    delta = ep.YY
    ha = loc2hor(108, delta, lat)
    t1 = rRound(zr - ha, 24)
    ep = sun(m, d, t1, lg)
    zr = ep.XX
    delta = ep.YY
    ha = loc2hor(108, delta, lat)
    t1 = rRound(zr - ha, 24)
    AzanSOb = hms(t1)
    '
    ' t2= Sun rise
    '
    ep = sun(m, d, 6, lg)
    zr = ep.XX
    delta = ep.YY
    ha = loc2hor(90.833, delta, lat)
    t2 = rRound(zr - ha, 24)
    ep = sun(m, d, t2, lg)
    zr = ep.XX
    delta = ep.YY
    ha = loc2hor(90.833, delta, lat)
    t2 = rRound(zr - ha, 24)
    Toloe = hms(t2)
    '
    ' zr=Zohr
    '
    ep = sun(m, d, 12, lg)
    ep = sun(m, d, ep.XX, lg)
    zr = ep.XX
    AzanZohr = hms(zr)
    '
    ' t2= Sun set
    '
    ep = sun(m, d, 18, lg)
    zr = ep.XX
    delta = ep.YY
    ha = loc2hor(90.833, delta, lat)
    t3 = rRound(zr + ha, 24)
    ep = sun(m, d, t3, lg)
    zr = ep.XX
    delta = ep.YY
    ha = loc2hor(90.833, delta, lat)
    t3 = rRound(zr + ha, 24)
    Ghoroob = hms(t3)
    '
    ' t2= Maghreb
    '
    ep = sun(m, d, 18.5, lg)
    zr = ep.XX
    delta = ep.YY
    ha = loc2hor(94.3, delta, lat)
    t4 = rRound(zr + ha, 24)
    ep = sun(m, d, t4, lg)
    zr = ep.XX
    delta = ep.YY
    ha = loc2hor(94.3, delta, lat)
    t4 = rRound(zr + ha, 24)
    Maghreb = hms(t4)

    End Sub
    Public Sub coord(citiIndex As Long, X As Double, Y As Double)
    X = FrmMain.Combo1.List(citiIndex)
    Y = FrmMain.Combo2.List(citiIndex)
    End Sub
    Private Sub Class_Initialize()
    Call Init
    End Sub
    Private Function sun(m As Double, ByVal d As Double, h As Double, lg As Double) As Behzad
    Dim mm As Double, l As Double, lst As Double, e As Double, omega As Double, ep As Double, ed As Double, u As Double
    Dim v As Double, theta As Double, delta As Double, alpha As Double, ha As Double, zr As Double
    Dim i As Long
    If m < 7 Then
    d = 31 * (m - 1) + d + h / 24
    Else
    d = 6 + 30 * (m - 1) + d + h / 24
    End If
    mm = 74.2023 + 0.98560026 * d
    l = -2.75043 + 0.98564735 * d
    lst = 8.3162159 + 0.065709824 * Floor(d) + 1.00273791 * 24 * mod2(d, 1) + lg / 15
    e = 0.0167065
    omega = 4.85131 - 0.052954 * d
    ep = 23.4384717 + 0.00256 * cosd(omega)
    ed = 180 / PI * e
    u = mm
    For i = 1 To 4
    u = u - (u - ed * sind(u) - mm) / (1 - e * cosd(u))
    Next
    v = 2 * atand(tand(u / 2) * Sqr((1 + e) / (1 - e)))
    theta = l + v - mm - 0.00569 - 0.00479 * sind(omega)
    delta = asind(sind(ep) * sind(theta))
    '
    alpha = 180 / PI * ATan2(cosd(theta), cosd(ep) * sind(theta))
    '
    If alpha >= 360 Then alpha = alpha - 360
    ha = lst - alpha / 15
    zr = rRound(h - ha, 24)

    sun.XX = zr
    sun.YY = delta
    End Function
    Private Function loc2hor(z As Double, d As Double, p As Double)
    loc2hor = acosd((cosd(z) - sind(d) * sind(p)) / cosd(d) / cosd(p)) / 15
    End Function
    Private Function rRound(X As Double, a As Double)
    Dim tmp As Double
    tmp = mod2(X, a)
    If tmp < 0 Then tmp = tmp + a
    rRound = tmp
    End Function
    Private Function hms(X As Double) As String
    Dim h As Double, mp As Double, m As Double, ss As Double
    Dim s As String
    X = Floor(3600 * X)
    h = Floor(X / 3600)
    mp = X - 3600 * h
    m = Floor(mp / 60)
    ss = Floor(mp - 60 * m)

    If h < 10 Then s = "0" Else s = ""
    s = s & h & ":"
    If m < 10 Then s = s & "0"
    s = s & m & ":"
    If ss < 10 Then s = s & "0"
    s = s & ss
    hms = s
    End Function
    Private Function sind(X)
    sind = Sin(PI / 180 * X)
    End Function
    Private Function cosd(X)
    cosd = Cos(PI / 180 * X)
    End Function
    Private Function tand(X)
    tand = Tan(PI / 180 * X)
    End Function
    Private Function atand(X)
    atand = Atn(X) * 180 / PI
    End Function
    Private Function asind(X As Double)
    asind = ASin(X) * 180 / PI
    End Function
    Private Function acosd(X As Double)
    acosd = ACos(X) * 180 / PI
    End Function
    Private Function Floor(X As Double) As Long
    Floor = Int(X)
    End Function
    Private Function ASin(X As Double) As Double
    ASin = Atn(X / Sqr(-X * X + 1.01))
    End Function
    Private Function ACos(X As Double) As Double
    ACos = Atn(-X / Sqr(-X * X + 1.01)) + 2 * Atn(1)
    End Function
    Private Function ATan2(ByVal X As Double, ByVal Y As Double) As Double
    On Error Resume Next
    If X = 0 Then
    If Y = 0 Then
    ATan2 = 1 / 0
    ElseIf Y > 0 Then
    ATan2 = PI / 2
    Else
    ATan2 = -PI / 2
    End If
    ElseIf X > 0 Then
    If Y = 0 Then
    ATan2 = 0
    Else
    ATan2 = Atn(Y / X)
    End If
    Else
    If Y = 0 Then
    ATan2 = PI
    Else
    ATan2 = (PI - Atn(Abs(Y) / Abs(X))) * Sgn(Y)
    End If
    End If
    End Function
    Private Function mod2(a As Double, b As Double) As Double
    mod2 = a - (b * Int(a / b))
    End Function

  7. #7
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    خوب پس میشه یه تابع معرفی کنین که تاریخ شمسی رو دریافت کته و تاریخ قمری همون روز رو از نوی Date بده بیرون.
    سلام دوست من خود مایکروسافت همچین کلاسی داره نیازی به این همه کد نویسی نیست.
    شما میتونین با کد زیر تاریخ تاریخ شمسی رو به میلادی تبدیل کنید.


    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    و اینکه می خوام در رویداد MouseHover یک کنترل کد زیر رو بذارم.Dim p2 As New System.Drawing.Point(X,Y)در واقع من یه کنترل Tooltip دارم که یه مقدار از نوع System.Drawing.Point که در اونجا نشون داده بشه . و من از کد بالا استفاده کردم.وقتی که مقدار X و Y رو قرار میدم کنترل توول تیپ در نقطه 0 و0 مانیتور نشون داده میشه . میخوام بدونم چه جوری می تونم . نقطه ی X , Y ماوس رو پیدا کنم و به جای X,y کد بالا قرار بدم.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته در وی بی 2008 چه طور میشه اعداد تصادفی بین 0 تا 6 رو ایجاد کرد با ویزگی های زیر :
    الف) هر بار که فرم رو اجرا می کنیم اعداد مثل هم در نیایند .مثلا وقتی فرم اجرا میشه و ما دستور رو در یک دکمه نوشته ایم و وقتی که 4 بار دکمه ی مربوطه رو فشار دادیم اعداد به ترتیب از راست به چپ ایجاد شد . 4 3 3 1
    اونوقت وقتی فرم رو بستیم و اجرا رو متوقف کردیم . و دوباره فرم رو اجرا کردیم و 4 بار روی دکمه کلیک کردیم دیگه اعداد مثل قبل تولید نشه و مثل قبل اعداد 4 3 3 1 رو تولید نکنه .
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ب ) وقتی که روی دکمه کلیک کردیم و مثلا عدد 4 رو تولید کرد . سپس روی دکمه دوباره کلیک میکنیم . دیگه همون عدد 4 نیاد و یه عدد دیگه بیاد یا اینکه اگه دوبار یه عدد پشت سر هم تولید شد برای بار دوم عدد رو رد کنه و یه عدد دیگه تولید کنه .
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    موفق و سربلند باشید.

  8. #8
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    خیلی خیلی ممنونم. واقعا ممنونم.

    کد اوقات شرعی چی شد . موفق شدید؟

  9. #9
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    یه چند تا سوال دیگه هم داشتم :
    توی وی بی 6 وقتی میخواستیم دستوراتی که در یک دکمه است به شکل زیر عمل می کردیم .
    call CommandButton1_Click
    این کار رو توی وی بی 2008 چه طور انجام میدهند ؟

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

    البته نمیدونم شما اون فایل dll رو دانلود کردید یا نه که کنترل هایی توش بود :

    اون کنترل Super Tooltip خوب بود .ولی برای وقتیه که روی یه کنترل مکث کنی. اما من میخوام که یک بالن به همون شکل Super Tooltip از آیکونی که در
    کنار ساعت قرار میگیره در بیاد . مثلا آیکونی که با Notify Icon ایجاد میشه .
    واسه بالون هم از کنترل Balon tip استفاده کن, نه کنترل Super tooltip
    اگه نسخه Trial این مجموعه رو دانلود کرده باشی نمونه پروژه هم همراهش داره.
    من اینترنت معمولی دارم حجم اونم زیاد بود نتونستم دانلود کنم.
    نحوه اینکه کنترل BalonTip از توی آیکون کنار ساعت بیاد بیرون چه جوریه ؟

  10. #10
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    سلام.
    call CommandButton1_Click
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    چه جوری یه حاشیه به متنم بدم.
    Dim gf As System.Drawing.Graphics
    Dim bitmap As New Bitmap(label1.Width, label1.Height)
    label1.Image = bitmap
    gf = System.Drawing.Graphics.FromImage(bitmap)
    Dim p As New Pen(Color.Red)
    Dim f As Font = New System.Drawing.Font("tahoma", 20)
    p.EndCap = System.Drawing.Drawing2D.LineCap.Triangle
    gf.DrawString("Salam", f, p.Brush, 0, 0)
    p = New Pen(Color.Blue)
    p.EndCap = System.Drawing.Drawing2D.LineCap.Triangle
    gf.DrawString("Salam", f, p.Brush, 1, 1)
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    اصلاً از dll خوشم نمیاد.
    نحوه اینکه کنترل BalonTip از توی آیکون کنار ساعت بیاد بیرون چه جوریه ؟
    این کنترل خودش توی VS وجود داره.به نام NotifyIcon.
    موفق باشید.

صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •