جواب سوال

 

باسلام دوست عزیز:

سوال شما به این صورت است که می خواهید تنظیمات بعد از خارج شدن از ویندوز هم باقی بماند.....!

سوال شما : فرض کنیم یک تکست دارم در صفحه ی فرم...به اسم t1

و من در هنگام اجرای برنامه میتوانم سایز رنگ و فونت تکست را تغییر دهم...

میخواهم t1 را بگونه ای کنم که اگر از برنامه خارج شدم...و یا رایانه را روشن خاموش کردم...رنگ و مشخصات

 دیگری که به آن وارد کردم هنوز باقی باشد...

جواب: دوست عزیز شما از راههای متفاوتی می توانید این کار را انجام دهید ( ذخیره در رجیستری ویندوز ،

 استفاده از فایلها ، استفاده از بانکهای اطلاعاتی و ... ) اما به نظر من ساده ترین روش استفاده از فایلها می

باشد چون دستورات ساده تری دارد. بافرض خودتان کار را ادامه می دهیم: 

برای این کار شما احتیاج دارید که یک فایل را باز کنید و اطلاعات را درون ان ذخیره ( هنگام خروج از برنامه ) و 

اطلاعات را از ان بخوانید (هنگام ورود مجدد به برنامه.)

ادامه نوشته

سوالات

 

برنامه ای که 10 عدد را بگیرد و ذخیره کند و سپس عدد دیگری را بگیرد و در آن جستجو کند اگر عدد بود

پیغام دهد "ok" در غیر این صورت "not found " ؟؟؟؟

دوست عزیز کد برنامه شما به این صورت است: ( بهترین روش )

 

Dim aryy(1 To 10) As Integer


Private Sub Command1_Click()
Open (App.Path & "\Log.log") For Append As #1
Print #1, ("______________________________")
Print #1, ("[" & Time & "]")
List1.Clear
    For i = 1 To 10
        aryy(i) = InputBox("Enter Number:")
        Print #1, "Number" & Trim(Str(i)) & "=" & Str(aryy(i))
        List1.AddItem (aryy(i))
    Next
Print #1, ("-------------")
Close
End Sub

Private Sub Command2_Click()
 Dim SFind As Integer
 Dim vfind As Boolean
 a = 0
Open (App.Path & "\Log.log") For Append As #1
SFind = InputBox("Please Enter Find Number:", "Find Number")
Print #1, ("Find Number=" & Str(SFind))
For i = 1 To 10
    If aryy(i) = SFind Then
        vfind = True
        Exit For
    End If
Next
If vfind = True Then
    Call MsgBox("Number" & Str(SFind) & " Find!", vbInformation, "Find Number")
Print #1, ("Number Find!")
Print #1, ("-------------")
Else
    Call MsgBox("Number" & Str(SFind) & " Not Find!", vbInformation, "Not Find")
Print #1, ("Number Not Find!")
Print #1, ("-------------")
End If
Close
End Sub

Private Sub Command3_Click()
Open (App.Path & "\Log.log") For Append As #1
    Print #1, ("End Program ___________________________")
    End
Close
End Sub

Task Bar را مخفی کنید...!

 

برای این کار ابتدا دو دکمه برروی پروژه درگ کنید سپس کد زیر را در برنامه کپی کنید:

Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd _
As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, _
ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal _
wFlags As Long) As Long

Private Declare Function FindWindow Lib "user32" Alias _
"FindWindowA" (ByVal lpClassName As String, ByVal _
lpWindowName As String) As Long

Const SWP_HIDEWINDOW = &H80
Const SWP_SHOWWINDOW = &H40


Private Sub Command1_Click()
   Dim Thwnd as Long
   Thwnd = FindWindow("Shell_traywnd", "")
   Call SetWindowPos(Thwnd, 0, 0, 0, 0, 0, SWP_HIDEWINDOW)
End Sub

Private Sub Command2_Click()
   Dim Thwnd as Long
   Thwnd = FindWindow("Shell_traywnd", "")
   Call SetWindowPos(Thwnd, 0, 0, 0, 0, 0, SWP_SHOWWINDOW)
End Sub

عکس صفحه نمایشگر خود را بچرخانید...!

 

با استفاده از توابع API  عکس صفحه نمایش خود را بچرخانید: 

Private Declare Function GetDesktopWindow Lib "user32" () As Long

Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long

Private Declare Function StretchBlt Lib "gdi32" _

                               (ByVal hdc As Long, _
                               ByVal x As Long, _
                               ByVal y As Long, _
                               ByVal nWidth As Long, _
                               ByVal nHeight As Long, _
                               ByVal hSrcDC As Long, _
                               ByVal xSrc As Long, _
                               ByVal ySrc As Long, _
                               ByVal nSrcWidth As Long, _
                               ByVal nSrcHeight As Long, _
                               ByVal dwRop As Long) As Long

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

    End

End Sub

Private Sub Form_Load()

    Form1.AutoRedraw = True

    Form1.ScaleMode = vbPixels

    a = GetDesktopWindow()

    b = GetDC(a)

    StretchBlt Form1.hdc, 0, 0, Screen.Width, Screen.Height, b, 0, _

          Screen.Height, Screen.Width, -Screen.Height, vbSrcCopy

End Sub

توابع API

سلام یکی از دوستان  پیام دادن و گفته اند در مورد [Api Function] کمی بیشتر توضیح دهیم.

 * همانطور که در مبحث های قبلی گفته شد این توابع را هم می توان در پروژه به کار برد که در این حالت با [Private] و در صورتی که درModule  و به صورت سراسری بخواهید تعریف کنید باید از            [Public]  استفاده گرددو بهتر است که در Module  استفاده گردد.

Public Declare Function PaintDesktop Lib "user32" _

(ByVal hdc As Long) As Long

------------------------------------

Private Sub cmdChange_Click ()

    PaintDesktop Form1.hdc

End Sub

وقتی روی فرم یک دکمه گذاشتید نام ان را به [cmdChange] تغییر داده و کد با لا را در برنامه استفاده کنیدو در صورتی که بخواهید در کنترل PictureBox  نمایش دهید کد دکمه را اینگونه ویرایش کنید         [PaintDesktop PictureBox1.hdc] این تکه کد به شما کمک می کند تا ( Background را در فرم قرار داده و عکس را در فرم نمایش دهید )

در اینده سعی می کنم چند مثال برای درک بهتر برایتان بزنم. (استفاده از توابع API به شما کمک می کند تا برنامه ای سیستمی با کاربرد های با لا درست کنید.)