PDA

View Full Version : آموزش: نمایش فورم به صورت متن و شکل



Saman_12
چهارشنبه 06 مرداد 1389, 20:58 عصر
سلام دوستان فعال خودم.
گفتم یه آموزش بزارم که همه استفاده کنند , میریم سراغ آموزش :
ما قراره یک فورم به صورت متن_شکل و متن داشته باشیم.(اگه نفهمیدین منظورم چیه بقیه آموزشو بخونید می فهمید.)
توی این مثال می خوایم ساخت فورم به صورت متن رو آموزش یدم :(کد زیر را در کد ادیتور .net بنویسید)


Imports System.Drawing.Drawing2D

Public Class Form1

Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Dim Txt As String = "VB.NET 2008"
Dim Graph As New GraphicsPath

Graph.AddString(Txt, New FontFamily("Times New Roman"), FontStyle.Bolی, 100, New Point(0, 100), New StringFormat)

Me.Region = New Region(Graph)

Dim Orginal As Point = Me.PointToScreen(New Point(0, 0))
e.Graphics.TranslateTransform(Me.Left - Orginal.X, Me.Top - Orginal.Y)
e.Graphics.SmoothingMode = SmoothingMode.AntiAlias
e.Graphics.FillPath(Brushes.Salmon, Graph)
e.Graphics.DrawPath(New Pen(Color.Black, 5), Graph)
End Sub
End Class

در آخرین پستی که میزنم میتونید پروژه ها رو دانلود کنید.(یه کارگره میره معدن بقیش باشه واسه بعدا)

Saman_12
چهارشنبه 06 مرداد 1389, 21:19 عصر
ببینین دوستان عزیز من یه جستوجو کردم مطلبی در این باره ندیدم!
اگه شما میدونید که توی این سایت قبلا در این باره بحث شده لطفا سریع تر اطلا ع بدهید تا من تای پیک رو حذف کنم و شرمنده مدیریت بخش و سایت نشم!!!:تشویق:
بقیه آموزشو 15 دقیقه دیگه می زارم!:بامزه:

Saman_12
چهارشنبه 06 مرداد 1389, 21:26 عصر
فکر کنم به 15 دقیقه نرسید خوب دیگه ما اینیم(عاشق سایت برنامه نویس و دل تنگ کار برانش:قلب:)
خوب در دو پست قبل یاد گرفتیم چطور یک فورم رو به صورت متن نشون بدیم , اما چه فایده اونو که نمی تونیم جابه جا کنیم یعنی همه ی زحمات به هدر رفته ؟
جواب سوال بالا نه هستش چون با اظافه کردن این کد , زیر Public Class Form1 می تونید متنتون رو تغییر مکان بدین :


Private _IsMouseDown1 As Boolean = False
Private _MouseFirstPosition1 As System.Drawing.Point

Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
If e.Button = System.Windows.Forms.MouseButtons.Left Then
Me._IsMouseDown1 = True
Me._MouseFirstPosition1 = e.Location
End If

End Sub

Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove
If Me._IsMouseDown1 Then
Me.Location = New Point( _
Me.Location.X + e.X - (Me._MouseFirstPosition1.X), _
Me.Location.Y + e.Y - (Me._MouseFirstPosition1.Y))
End If

End Sub

Private Sub Form1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseUp
Me._IsMouseDown1 = False

End Sub

Saman_12
چهارشنبه 06 مرداد 1389, 21:36 عصر
البته من برای نمایش فورم به صورت متن یه روش دیگه دارم که فقط یک خط هست اونم توی یک پست به شما دوستان برنامه نویس یاد میدم:کف:(من کی باشم که بخوام یاد بدم:بامزه:)
فعلا از این روش این دو تا تصویر رو داشته باشین تا بعد.:لبخند:
http://italia-host.coolpage.biz/uploads/1280417074.jpg
http://italia-host.coolpage.biz/uploads/1280360267.jpg

Saman_12
چهارشنبه 06 مرداد 1389, 22:04 عصر
چیه تصاویر رو دیدید کف کردید؟؟؟؟
دوستان عزیز : تا فردا صبح :

محسن شامحمدی
چهارشنبه 06 مرداد 1389, 22:46 عصر
من هم یک چیزی آموزش بدم البته به پای کار شما نمی رسه. ( با اجازه صاحب تاپیک)
برای نمایش متن یا عکس روی فرم بدون لبه نیازی به این همه کد نویسی نیست
فقط لازمه متن تون رو بنویسین یا عکستون رو به صورت png بذارید
و بعد روی فرم کلیک کنید و پراپرتی transparence key رو رنگ فرم بذارید
واسه این که قضیه واضح تر بشه یک نمونه هم گذاشتم.

Saman_12
چهارشنبه 06 مرداد 1389, 23:34 عصر
بله دیگه دوستان به ما وقت نداند که به فردا بکشه اون روشی که می خواستم بگم ویه خط بود همینیه که جناب 09111111111 ذکر کردن!!:تشویق:
فردا بقیه آموزشو حتما دنبال کنید.:کف:

Saman_12
پنج شنبه 07 مرداد 1389, 09:38 صبح
سلام دوستان عزیز خودم.
شاید بعضی از شما فکر کنید که چرا من دارم تایپیک رو ادامه میدم جواب سوالاتتون رو که 091111111 دادند؟
بهتره به این نکته توجه داشته باشین که اون خاصیت transparence key فقط مربوط به فورم میشه یعنی نمی شه با اون به یه باتون یا پانل یا پیکچر با کس شکل , متن یا یه شکل دیگه داد!:قلب:
ادامه آموزش :
در پست های قبلی یاد گرفتیم که چطور یک فورم را به صورت متن در بیاریم و چیکار کنیم که بتونیم اونو حرکت بدیم!
توی این قسمت آموزش شما یاد خواهید گرفت چگونه از فرم یک دایره ی توی خالی درست کنید اگه دوست داشتین میتونید با اظافه کردنی قسمتی از این کد ها که در پست اول نیست یک فورم توخالی با متن داشته باشین.
کد زیر رو در کد ادیتور .net وارد کنید :


Imports System.Drawing.Drawing2D
Public Class Form1

Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Dim Graph As New GraphicsPath
Graph.AddEllipse(60, 100, 200, 200)
Graph.AddEllipse(10, 50, 300, 300)
Me.Region = New Region(Graph)
Dim Orgin As Point = Me.PointToScreen(New Point(0, 0))
e.Graphics.TranslateTransform(Me.Left - Orgin.X, Me.Top - Orgin.Y)
e.Graphics.SmoothingMode = SmoothingMode.AntiAlias

End Sub

End Class

بهتر قبل از دیباگ کردن Size فورم رو یکم بزرگ ترکنید!!!

Saman_12
پنج شنبه 07 مرداد 1389, 09:55 صبح
در ضمن یادم رفت بگم که اگه دلتون فقط یه دایره می خواد این تیکه کد رو از کد بالا حذف کنید اونوقت یه دایره دارید!:لبخند:

Graph.AddEllipse(60, 100, 200, 200)

Saman_12
پنج شنبه 07 مرداد 1389, 10:07 صبح
فکر کنم آموزش به پایان رسید.:لبخند:
امید وارم حد اکثر استفاده رو از این آموزش برده باشین.:قلب:
پروزه آموزش رو هم میتونید از لینک زیر دانلود کنید!
پروژه متن :
http://italia-host.coolpage.biz/uploads/1280461949.rar
پروژه متن وشکل :
http://italia-host.coolpage.biz/uploads/1280426828.rar

vbworm
پنج شنبه 07 مرداد 1389, 14:44 عصر
دستتون درد نکنه. فقط من این قضیه زیر رو نفهمیدم یعنی چی؟؟؟؟؟


بقیه آموزشو 15 دقیقه دیگه می زارم!:بامزه:

Saman_12
پنج شنبه 07 مرداد 1389, 15:04 عصر
خواهش می کنم دوست من.:قلب:
در باره اون مطلب هم منظور خواستی نداشتم.(میتونید به زمان پست توجه کنید)!!!

محسن شامحمدی
چهارشنبه 13 مرداد 1389, 10:08 صبح
سامان جان اگر بابت اون آموزش ناراحتت کردم منو ببخش.
من هم فقط خواستم چیزی رو که بلدم بگم تا دوستان استفاده کنند.
بازم شرمنده:خجالت:

Saman_12
چهارشنبه 13 مرداد 1389, 10:46 صبح
نه چه ناراحتی(به هر حال این مطلب رو می نوشتم حالا یکی دیگه زحمتشو کشیده):قهقهه:
من هیچ وقت توی یه دنیای مجازی از کسی چیزی به دل نمی گیرم.(شما لطف کردین و کار منو را حت هم تر کردین):قلب: