exploit

هیچ وقت برای تازه شدن دیر نیست!

exploit

هیچ وقت برای تازه شدن دیر نیست!

تابع tnstr

سلام دوستان , امروز می خوام یه مطلب کاربردی تو VB رو براتون بگم که شاید خیلی به کارتون بیاد این کد شاید براتون تو برنامه هایی که باید از ورودی مقدار خاصی رو بگیرید مثلا می خواهید از ورودی فقط یک مقدار عددی رو بگیرید و بعد اون رو تو محاسبات استفاده کنید و اگر کاربر مثلا در ورودی 788در12 را تایپ کنه برنامه Error میده خوب برای رفع این مشکل می شه از ورودی فقط عدد گفت یعنی در صورتی که کاربر فقط اعداد 0 تا 9 رو تایپ کنه در ورودی نمایش داده می شه این هم حلال این مشکل .

خوب این کد رو بهتر که در رویداد Keypress کنترل مورد نظر خود ( از جمله  Textbox , Rich Textbox , Inputbox  و ... ) بنویسید که به محض فشرده شدن هر کلید از سوی کاربر این قسمت چک می شود .

 

Private Sub TextBox_KeyPress(KeyAscii As Integer)
'=============================================
   Dim StrValid As String
   StrValid = "0123456789"
   If InStr(StrValid, Chr(KeyAscii)) = 0 Then
      KeyAscii = 0
   End If
End Sub

 

بد نیست یه اشاره ای هم به توابع به کار رفته تو این کنم :

1. تابع Instr : یک زیررشته را در یک رشته دیگر جستجو میکند و موقعیت آنرا در رشته بر می گرداند شکل کلی این تابع به صورت زیر است :

InStr([start, ]string1, string2[, compare])

قسمت

توضیحات

start

مکانی از رشته که جستجو باید از آنجا  آغاز شود

string1

رشته اول

string2

رشته دوم

compare

مشخص کردن نوع مقایسه که بین دو رشته انجام میشود که خود بر سه نوع vbBinaryCompare و vbDatabaseCompare و vbTextCompare می باشد

به این مثال توجه کنید :

instr("visual basic Language","Language")  ==============> عدد 14 برگردانده میشود

:: یک نکته و آن اینکه مواvدی که در شکل کلی این تابع در داخل [ ] قرار دارند اختیاری می باشند .

 

2. تابع Chr : این تابع کاراکتر معادل کد اسکی یک مقدار را بر می گرداند

 KeyAscii : آرگومانی است که کد اسکی کلیدی از صفحه کلید را که فشرده شده بر می گرداند.

تابع delline

#include <stdlib.h>
int main(void)
{
   clrscr();
   textcolor(12);
   cprintf("The function DELLINE deletes the line containing the\r\n");
   cprintf("cursor and moves all lines below it one line up.\r\n");
   cprintf("DELLINE operates within the currently active text\r\n");
   cprintf("window.  Press any key to continue . . .");
   gotoxy(1,2);
/* Move the cursor to the second line and first column */   getch();

   delline();

   getch();
   return 0;
}

تابع insline

#include <stdlib.h>int main(void)
{
   clrscr();
   textcolor(12);
   cprintf("The function DELLINE deletes line containing the\r\n");
   cprintf("cursor and moves all lines below it one line up.\r\n");
   cprintf("DELLINE operates within the currently active text\r\n");
   cprintf("window.  Press any key to continue . . .");
   gotoxy(1,2);
/* Move the cursor to the second line and first column */
  
getch();

   delline();

   getch();
   return 0;
}

تابع textmode

4 . textmode : این تابع نوع نمایش text در صفحه نمایش را کنترل می کند . مقادیر قابل پذیرش این تابع را در جدول زیر مشاهده می کنید .

ثابت
مقدار عددی
نوع حالت
LASTMODE
-1
Previous text mode
40 columns
BW40
0
Black and white
40 columns
C40
1
Color
80 columns
BW80
2
Black and white
80 columns
C80
3
Color
80 columns
MONO
7
Monochrome
43 columns
C4350
64
EGA and VGA
50 columns

:: چگونگی عملکرد این تابع را میتوانید در مثال زیر ببینید :

#include <stdlib.h>int main(void)
   {
    clrscr();
    textmode(BW40);
    textcolor(12);
    cprintf("Textmode >>>> (BW40)");
    getch();


    textmode(BW80);
    textcolor(10);
    cprintf("Textmode >>>> (BW80)");
    getch();

    textmode(C40);
    textcolor(11);
    cprintf("Textmode >>>> (C40)");
    getch();

    textmode(MONO);
    textcolor(14);
    cprintf("Textmode >>>> (MONO)");
    getch();

    return 0;
   }

پیادی سازی text در محیط Progress Bar

 for (i = 0;i < 80;i ++)
{
gotoxy (wherex(),21);
cprintf ("کاراکتر مورد نظر");
delay (50);
}