در این مطلب، ویدئو مقدمه ای بر رابط کاربری گرافیکی در پایتون با PyQt5 با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:26:10
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,210 –> 00:00:02,790
سلام، در این آموزش به شما نشان خواهم داد که
2
00:00:02,790 –> 00:00:04,859
چگونه با پایتون
3
00:00:04,859 –> 00:00:07,709
و PI QT 5 یک ماشین حساب بسازید، در نهایت به
4
00:00:07,709 –> 00:00:09,870
این شکل می شود و مانند هر
5
00:00:09,870 –> 00:00:12,930
ماشین حساب اصلی عمل می کند و اگر به دنبال آن باشید، مراحلی که من طی خواهم کرد
6
00:00:12,930 –> 00:00:14,640
در این زمان ها اتفاق می افتد.
7
00:00:14,640 –> 00:00:17,280
چیزهای خاصی مثل همیشه
8
00:00:17,280 –> 00:00:19,530
اگر می خواهید از pi QT استفاده کنید، باید pi QT را
9
00:00:19,530 –> 00:00:21,780
نصب کنید زیرا
10
00:00:21,780 –> 00:00:24,539
حتی به طور پیش فرض با PI همراه نیست، بنابراین من
11
00:00:24,539 –> 00:00:26,460
پوسته قدرت را در ترمینال
12
00:00:26,460 –> 00:00:30,060
نوع pip install PI QT 5 به دست آورده ام و باید
13
00:00:30,060 –> 00:00:32,700
ببینید انیمیشن نصب و اگر
14
00:00:32,700 –> 00:00:35,070
میتوانید PI QT 5 را در اسکریپت پایتون
15
00:00:35,070 –> 00:00:36,870
بدون دریافت پیام خطا وارد
16
00:00:36,870 –> 00:00:39,610
کنید، آماده هستید،
17
00:00:39,610 –> 00:00:43,239
بیایید قبل از شروع این پروژه اصول اولیه را ایجاد
18
00:00:43,239 –> 00:00:45,160
کنیم، بیایید در مورد
19
00:00:45,160 –> 00:00:48,670
رابطهای کاربری گرافیکی خود صحبت کنیم همه
20
00:00:48,670 –> 00:00:50,199
این بدان معناست که وقتی از آن استفاده میکنید
21
00:00:50,199 –> 00:00:52,500
رایانه خود به جای تایپ متن روی نمادها و دکمهها کلیک میکنید در
22
00:00:52,500 –> 00:00:55,900
حالی که پایتون
23
00:00:55,900 –> 00:00:57,850
زبان قدرتمندی است که میتوان از
24
00:00:57,850 –> 00:00:59,920
کاوش در سیارات گرفته تا سرویسهای در حال اجرا
25
00:00:59,920 –> 00:01:02,920
و تجزیه و تحلیل دادهها استفاده کرد.
26
00:01:02,920 –> 00:01:05,590
رابط کاربری و در
27
00:01:05,590 –> 00:01:08,080
نتیجه Pythian واقعاً
28
00:01:08,080 –> 00:01:10,420
ابزاری برای نمایش عناصر گرافیکی مانند
29
00:01:10,420 –> 00:01:13,360
دکمهها یا لغزنده ندارد که ما به کتابخانههای اضافی نیاز داریم،
30
00:01:13,360 –> 00:01:15,940
آنها
31
00:01:15,940 –> 00:01:18,070
تعداد کمی در دسترس هستند که میتوانید
32
00:01:18,070 –> 00:01:21,429
همه آنها را در اسناد پایتون بیابید که
33
00:01:21,429 –> 00:01:24,190
پیشفرض TK نامیده میشود. inter
34
00:01:24,190 –> 00:01:26,770
که مخفف رابط TK است
35
00:01:26,770 –> 00:01:28,780
و در حالی که این یکی همراه
36
00:01:28,780 –> 00:01:31,270
با Pavin نصب شده است، بخش اصلی
37
00:01:31,270 –> 00:01:34,299
زبان نیست، در واقع CK inter حتی
38
00:01:34,299 –> 00:01:36,009
در پایتون ساخته نشده است، اما به زبانی
39
00:01:36,009 –> 00:01:40,030
به نام tcl/tk کتابخانه مهم دیگر
40
00:01:40,030 –> 00:01:42,700
، چارچوب Qt است. که در
41
00:01:42,700 –> 00:01:46,030
ابتدا برای C++ توسعه داده شد، اما می توان آن را در
42
00:01:46,030 –> 00:01:48,399
پایتون i’ve-i’ve-i’ve pie QT یا سایت Pi استفاده
43
00:01:48,399 –> 00:01:50,920
کرد، کمی تاریخچه وجود دارد که چرا
44
00:01:50,920 –> 00:01:52,899
آنها دو ماژول برای یک هدف هستند اما
45
00:01:52,899 –> 00:01:55,539
این دو واقعا شبیه هستند. بنابراین این چیزی نیست
46
00:01:55,539 –> 00:01:56,920
که شما نیاز به نگرانی زیادی در مورد
47
00:01:56,920 –> 00:01:57,549
آن داشته باشید
48
00:01:57,549 –> 00:02:00,880
و در نهایت Kivi وجود دارد که مبتنی
49
00:02:00,880 –> 00:02:03,640
بر OpenGL است.
50
00:02:03,640 –> 00:02:05,409
51
00:02:05,409 –> 00:02:08,348
52
00:02:08,348 –> 00:02:10,299
و هر کدام
53
00:02:10,299 –> 00:02:13,209
مزایا و محدودیت هایی دارند من از PI
54
00:02:13,209 –> 00:02:15,579
QT برای این آموزش استفاده خواهم کرد زیرا زیبا
55
00:02:15,579 –> 00:02:17,769
و ساده است اما با کمی
56
00:02:17,769 –> 00:02:19,569
سرهم بندی می توانید همین کار را
57
00:02:19,569 –> 00:02:22,400
با کتابخانه های دیگر نیز ایجاد کنید
58
00:02:22,400 –> 00:02:24,590
و قبل از اینکه وارد منطق pie
59
00:02:24,590 –> 00:02:27,049
cutie شوم. باید به شما اخطار بدهم
60
00:02:27,049 –> 00:02:28,579
که باید حداقل یک درک اولیه
61
00:02:28,579 –> 00:02:31,180
از برنامه نویسی شی گرا در پایتون داشته باشید، در
62
00:02:31,180 –> 00:02:34,450
غیر این صورت هیچ چیز معنی نمی دهد به
63
00:02:34,450 –> 00:02:36,829
طور خاص شما باید بدانید که
64
00:02:36,829 –> 00:02:38,989
چگونه یک شی از یک کلاس ایجاد کنید چگونه
65
00:02:38,989 –> 00:02:41,720
از خود وراثت super استفاده کنید. اما حداقل برای این آموزش
66
00:02:41,720 –> 00:02:43,519
نیازی به چندین وراثت یا دکوراتور نخواهید داشت
67
00:02:43,519 –> 00:02:45,409
68
00:02:45,409 –> 00:02:48,590
و علاوه بر آن باید
69
00:02:48,590 –> 00:02:51,000
در مورد توابع
70
00:02:51,000 –> 00:02:52,890
71
00:02:52,890 –> 00:02:55,440
72
00:02:55,440 –> 00:02:57,930
73
00:02:57,930 –> 00:03:00,540
لامبدا نیز بدانید. برنامه cue نامیده می شود
74
00:03:00,540 –> 00:03:03,540
و دیگری پنجره اصلی است
75
00:03:03,540 –> 00:03:05,190
که بیشتر با آن کار خواهید کرد
76
00:03:05,190 –> 00:03:07,530
شی پنجره اصلی است زیرا این یکی
77
00:03:07,530 –> 00:03:09,420
عناصر گرافیکی و
78
00:03:09,420 –> 00:03:12,330
منطق برنامه را کنترل می کند. خود برنامه cue
79
00:03:12,330 –> 00:03:13,860
تمام کارهایی را که در زیر کاپوت اتفاق میافتد، انجام میدهد
80
00:03:13,860 –> 00:03:16,350
، مانند مدیریت رویداد و
81
00:03:16,350 –> 00:03:18,930
مقداردهی اولیه ماژولها، بیشتر آنها به
82
00:03:18,930 –> 00:03:20,700
صورت خودکار هستند، اما در واقع نیازی نیست که
83
00:03:20,700 –> 00:03:22,410
84
00:03:22,410 –> 00:03:24,340
85
00:03:24,340 –> 00:03:26,860
وقتی آن دو ایجاد میشوند، تغییرات زیادی در مورد این بخش داشته باشید و یک
86
00:03:26,860 –> 00:03:28,690
چارچوب اولیه دارید. که می توانید
87
00:03:28,690 –> 00:03:31,360
عناصر بصری را به آن اضافه کنید و در PI Q T به
88
00:03:31,360 –> 00:03:33,490
اینها ویجت می گویند که می تواند یک
89
00:03:33,490 –> 00:03:35,830
دکمه یا یک فیلد باشد، همچنین می تواند
90
00:03:35,830 –> 00:03:39,230
محفظه ای باشد که عناصر دیگر را
91
00:03:39,230 –> 00:03:41,510
برای هدف این آموزش در خود نگه می دارد، همه
92
00:03:41,510 –> 00:03:44,420
ما به برخی موارد اساسی نیاز داریم که من از یکی استفاده خواهم کرد.
93
00:03:44,420 –> 00:03:46,760
به نام دکمه فشاری نشانه که یک
94
00:03:46,760 –> 00:03:48,769
دکمه بسیار ساده است و برای
95
00:03:48,769 –> 00:03:51,739
کلیدهای اعداد و اپراتور مناسب است، سپس از
96
00:03:51,739 –> 00:03:54,080
ویجتی به نام ویرایش خط نشانه
97
00:03:54,080 –> 00:03:56,540
استفاده خواهم کرد که می توان از آن برای وارد کردن و نمایش متن در
98
00:03:56,540 –> 00:03:58,250
ماشین حساب استفاده کرد که این یکی نتایج را نشان می دهد
99
00:03:58,250 –> 00:04:01,880
و در نهایت من از ویجت Q استفاده خواهم کرد
100
00:04:01,880 –> 00:04:03,769
که اساساً فقط یک
101
00:04:03,769 –> 00:04:05,720
ظرف خالی است که برای ایجاد
102
00:04:05,720 –> 00:04:07,549
ساختارها در برنامه عالی است و
103
00:04:07,549 –> 00:04:09,950
این همه چیزی است که برای شروع به آن نیاز داریم،
104
00:04:09,950 –> 00:04:13,010
بیایید با آن به کد بپردازیم.
105
00:04:13,010 –> 00:04:15,290
ابتدا ما به مقداری واردات نیاز داریم که
106
00:04:15,290 –> 00:04:18,019
در واقع همه pie cutie را وارد نمیکنیم، در عوض
107
00:04:18,019 –> 00:04:20,930
من فقط pie cutie 5
108
00:04:20,930 –> 00:04:24,830
ویجت ایدهآل را وارد میکنم و من آن را qtw مینامم.
109
00:04:24,830 –> 00:04:26,630
قرارداد نامگذاری را از کتاب Alan Moore
110
00:04:26,630 –> 00:04:29,350
تسلط بر برنامهنویسی رابط کاربری گرافیکی در پایتون گرفتم
111
00:04:29,350 –> 00:04:31,850
که کتاب عالی است.
112
00:04:31,850 –> 00:04:33,229
توصیه میکنم اگر میخواهید
113
00:04:33,229 –> 00:04:36,530
در مورد pie cutie widget اطلاعات بیشتری کسب کنید،
114
00:04:36,530 –> 00:04:38,600
همه ویجتها را در خود جای میدهد و کافی است، زیرا ما
115
00:04:38,600 –> 00:04:40,520
فقط میخواهیم یک برنامه ساده بدون
116
00:04:40,520 –> 00:04:43,520
استایل زیاد
117
00:04:43,520 –> 00:04:45,440
بسازیم، بیایید کلاسی را ایجاد کنیم که همه ویجتها را در خود جای دهد.
118
00:04:45,440 –> 00:04:47,120
عناصری که
119
00:04:47,120 –> 00:04:49,970
برای این کار به کاربر نشان داده می شوند،
120
00:04:49,970 –> 00:04:51,710
باید کلاسی ایجاد کنم که آن را
121
00:04:51,710 –> 00:04:55,039
پنجره اصلی می نامم و از ویجت زیبای ewq به ارث می رسد،
122
00:04:55,039 –> 00:05:01,699
سپس dunder init را اضافه می کنم و در
123
00:05:01,699 –> 00:05:03,560
آن به من dunder init روی
124
00:05:03,560 –> 00:05:09,729
ابرها می گویند. از با super شنیده شد و
125
00:05:09,729 –> 00:05:13,729
بعد از آن به self-control زنگ زدم اجازه دهید
126
00:05:13,729 –> 00:05:15,830
این را مرور کنم و توضیح دهید که ما با
127
00:05:15,830 –> 00:05:17,660
ایجاد یک کلاس به روش معمول شروع می کنیم و
128
00:05:17,660 –> 00:05:21,349
این کلاس از qwidget به ارث می برد
129
00:05:21,349 –> 00:05:23,180
خود کلاس پنجره اصلی همان چیزی است که wi
130
00:05:23,180 –> 00:05:24,889
تمام عناصر بصری را نگه میدارد و
131
00:05:24,889 –> 00:05:27,320
هر چیزی را که از آن به ارث میبرد، پایه خواهد بود،
132
00:05:27,320 –> 00:05:29,030
همه عناصر دیگر روی آن
133
00:05:29,030 –> 00:05:32,660
قرار میگیرند، در این مورد qwidget فقط
134
00:05:32,660 –> 00:05:34,700
یک ظرف خالی است، بنابراین با یک
135
00:05:34,700 –> 00:05:37,669
پنجره کاملاً خالی شروع میکنیم و در مرحله بعد
136
00:05:37,669 –> 00:05:39,770
ویژگیهای کلاس
137
00:05:39,770 –> 00:05:42,500
ما را مقداردهی اولیه میکنم. این کار را انجام دادهایم و فعلاً این
138
00:05:42,500 –> 00:05:44,180
خالی خواهد بود به جز ارث
139
00:05:44,180 –> 00:05:46,580
بری کلاس ظاهری که
140
00:05:46,580 –> 00:05:49,789
برای عملکرد صحیح آن لازم است و بعد از
141
00:05:49,789 –> 00:05:51,770
آن به صورت خودآموز نمایش داده میشوند که
142
00:05:51,770 –> 00:05:53,870
تمام عناصر شی
143
00:05:53,870 –> 00:05:56,419
ایجاد شده از پنجره اصلی را نمایش میدهد. کلاس
144
00:05:56,419 –> 00:05:58,760
در حال حاضر چیزی به جز یک پنجره خالی نشان نمی دهد
145
00:05:58,760 –> 00:06:00,470
زیرا ما
146
00:06:00,470 –> 00:06:02,930
هنوز ویجتی اضافه نکرده ایم که
147
00:06:02,930 –> 00:06:06,050
کمی بعد از کلاس پنجره اصلی اتفاق می افتد.
148
00:06:06,050 –> 00:06:11,310
149
00:06:11,310 –> 00:06:14,220
میتوانم
150
00:06:14,220 –> 00:06:15,750
برای قابلیتهای اضافی بیشتر به اینجا وارد
151
00:06:15,750 –> 00:06:18,660
کنم، اما من فقط به آن نیازی ندارم
152
00:06:18,660 –> 00:06:20,730
و خوب است که برنامه صف را ایجاد میکند
153
00:06:20,730 –> 00:06:22,530
که همه
154
00:06:22,530 –> 00:06:24,360
چیزهای زیر
155
00:06:24,360 –> 00:06:26,340
هود را ردیابی میکند، دو کاری که باید انجام شود عبارتند از cr
156
00:06:26,340 –> 00:06:28,050
یک شی واقعی از کلاس بخوریم
157
00:06:28,050 –> 00:06:31,229
من آن را MW می نامم و به آن یک پنجره اصلی کلاس اختصاص می دهیم
158
00:06:31,229 –> 00:06:34,139
و با آن دو
159
00:06:34,139 –> 00:06:36,120
شی داریم که برنامه ما را حفظ می کنند
160
00:06:36,120 –> 00:06:38,819
، تنها کاری که باید انجام دهیم اضافه کردن
161
00:06:38,819 –> 00:06:42,030
نقطه X زیرخط برنامه است که به پایتون می گوید
162
00:06:42,030 –> 00:06:44,159
برنامه را اجرا کند. و خط زیر
163
00:06:44,159 –> 00:06:45,780
برای جلوگیری از برخی
164
00:06:45,780 –> 00:06:48,780
درگیریهای نامگذاری با پایتون مهم است و این به این دلیل است که اگر
165
00:06:48,780 –> 00:06:51,210
من کد را اجرا کنم، میتوانید
166
00:06:51,210 –> 00:06:53,879
یک پنجره خالی را ببینید که میتوان اندازه آن را تغییر داد
167
00:06:53,879 –> 00:06:57,240
و بسته کرد، اما همین حدود است، بنابراین
168
00:06:57,240 –> 00:07:00,479
بیایید عناصر گرافیکی را در کنار آن اضافه کنیم. اضافه کردن یک
169
00:07:00,479 –> 00:07:02,490
ویجت به پنجره تنها چیزی که نیاز داریم این است که
170
00:07:02,490 –> 00:07:04,710
آن را به کلاس وصل کنیم تا به طور
171
00:07:04,710 –> 00:07:07,349
موثر ویژگی های پنجره اصلی به
172
00:07:07,349 –> 00:07:09,750
عناصر گرافیکی تبدیل شوند برای یک
173
00:07:09,750 –> 00:07:12,180
مثال بسیار ساده که چگونه این کار می کند، اجازه دهید
174
00:07:12,180 –> 00:07:14,879
یک عنوان در تابع init
175
00:07:14,879 –> 00:07:17,819
پنجره اصلی اضافه کنیم. عنوان پنجره را تنظیم کنید
176
00:07:17,819 –> 00:07:21,990
و یک ماشین حساب رشته را وارد کنید اگر
177
00:07:21,990 –> 00:07:24,000
کد را اجرا کنم اکنون عنوانی برای پنجره دریافت می کنیم
178
00:07:24,000 –> 00:07:27,029
و از یک الگوی مشابه برای
179
00:07:27,029 –> 00:07:29,310
اضافه کردن همه دکمه ها و برچسب ها استفاده می شود
180
00:07:29,310 –> 00:07:31,469
اما یک مرحله در این بین وجود دارد و
181
00:07:31,469 –> 00:07:35,430
آن چیدمان است. می بینید که عنوان فقط می تواند
182
00:07:35,430 –> 00:07:37,770
در یک مکان قرار گیرد، بنابراین نیازی به طرح بندی
183
00:07:37,770 –> 00:07:40,949
ندارد، اما اگر دکمه peyote اضافه کنم، نمی
184
00:07:40,949 –> 00:07:43,050
دانم آن را کجا قرار دهم، بنابراین به هیچ وجه
185
00:07:43,050 –> 00:07:46,409
آن را نشان نمی دهد، در عوض ساختار
186
00:07:46,409 –> 00:07:48,659
مورد نیاز ما این است ما در حال حاضر یک محفظه خالی داریم
187
00:07:48,659 –> 00:07:50,969
به آن یکی، من یک طرح بندی اضافه می کنم
188
00:07:50,969 –> 00:07:53,430
و در این طرح بندی دکمه و برچسب ها را اضافه می کنم
189
00:07:53,430 –> 00:07:56,009
چند
190
00:07:56,009 –> 00:07:58,409
سبک طرح بندی مختلف وجود دارد که برخی از
191
00:07:58,409 –> 00:08:01,440
بزرگ ها عبارتند از QV box layout و qh box
192
00:08:01,440 –> 00:08:04,169
layout V. و سن به ترتیب مخفف
193
00:08:04,169 –> 00:08:06,810
عمودی و افقی است، اگر
194
00:08:06,810 –> 00:08:09,150
یکی از این موارد را اضافه کنم،
195
00:08:09,150 –> 00:08:10,379
ویجتها در یک آرایش عمودی یا افقی
196
00:08:10,379 –> 00:08:12,960
قرار میگیرند که
197
00:08:12,960 –> 00:08:15,900
قبل از ماشین حساب استفاده نمیشود، در عوض من
198
00:08:15,900 –> 00:08:18,120
بیشتر به چیزی که به آن چیدمان شبکه نشانه میگویند تکیه خواهم کرد.
199
00:08:18,120 –> 00:08:20,669
ما یک شبکه دو بعدی
200
00:08:20,669 –> 00:08:23,560
که عناصر را می توان بر
201
00:08:23,560 –> 00:08:25,600
روی طرح قرار داد که من برای این
202
00:08:25,600 –> 00:08:27,280
پروژه استفاده خواهم کرد به این شکل
203
00:08:27,280 –> 00:08:30,430
در پنجره ظاهر می شود.
204
00:08:30,430 –> 00:08:32,469
205
00:08:32,469 –> 00:08:34,270
206
00:08:34,270 –> 00:08:37,150
چیدمان شبکه نشانه و در این g خلاص شدن از
207
00:08:37,150 –> 00:08:38,860
همه عناصر ماشین حساب
208
00:08:38,860 –> 00:08:41,530
در حال حاضر قرار خواهند گرفت، ممکن است بپرسید که
209
00:08:41,530 –> 00:08:43,719
چرا من فقط یک شبکه در داخل پنجره اصلی قرار نمی دهم
210
00:08:43,719 –> 00:08:46,150
و این یک سوال بسیار خوب است،
211
00:08:46,150 –> 00:08:48,910
اساساً این کار فقط برای اینکه
212
00:08:48,910 –> 00:08:51,310
کد کمی خواناتر و ناب تر باشد انجام می شود. پس
213
00:08:51,310 –> 00:08:54,120
از مدتی به این یکی بازخواهد گشت،
214
00:08:54,120 –> 00:08:57,569
بنابراین در کد من طرحبندی خود نقطهای
215
00:08:57,569 –> 00:09:03,389
داشتم و طرحبندی جعبه QT wqv را وارد کردم، اکنون
216
00:09:03,389 –> 00:09:05,579
یک طرح برای پنجره اصلی داریم اما
217
00:09:05,579 –> 00:09:07,350
نمیتوانیم آن را ببینیم زیرا فقط یک طرحبندی است.
218
00:09:07,350 –> 00:09:09,660
برای نشان دادن یک دکمه تکی
219
00:09:09,660 –> 00:09:12,329
اضافه میکنم، یک متغیر bTW و یک اضافه میکنم و
220
00:09:12,329 –> 00:09:15,389
یک دکمه فشاری مکعبی QT w r اختصاص میدهم
221
00:09:15,389 –> 00:09:18,600
و این یک نوع تست قدرت است، اگر
222
00:09:18,600 –> 00:09:20,699
کد را اجرا کنم، میتوانیم ببینیم که
223
00:09:20,699 –> 00:09:22,470
چیزی جز این که پنجره تبدیل شده است را نمیبینیم.
224
00:09:22,470 –> 00:09:25,319
زمانی که آن را راه اندازی می کنیم
225
00:09:25,319 –> 00:09:27,120
تا دکمه قابل مشاهده باشد، باید
226
00:09:27,120 –> 00:09:29,639
ابتدا آن را به طرح وصل کنیم، بنابراین در
227
00:09:29,639 –> 00:09:30,059
کد
228
00:09:30,059 –> 00:09:32,459
طرح خودآموزی داشتم یا ویجت را اضافه
229
00:09:32,459 –> 00:09:38,339
کردم و به آن PT و اگر
230
00:09:38,339 –> 00:09:40,350
کد را اجرا کنم اکنون می توانیم ببینیم. دکمه ای
231
00:09:40,350 –> 00:09:42,629
که وقتی آن را فشار می دهیم انیمیشن کوچکی نیز دریافت می
232
00:09:42,629 –> 00:09:45,120
کنیم اما اتفاق خاصی نمی افتد هنوز
233
00:09:45,120 –> 00:09:47,339
آن بخش کمی وارد خواهد شد و
234
00:09:47,339 –> 00:09:51,209
فقط برای تکرار آنچه اتفاق افتاد
235
00:09:51,209 –> 00:09:52,980
ابتدا یک طرح بندی در پنجره اصلی
236
00:09:52,980 –> 00:09:56,339
طرح بندی جعبه QV ایجاد کردم سپس یک
237
00:09:56,339 –> 00:09:59,950
ویجت دکمه به نام BTN one در خط بعدی ایجاد کردم
238
00:09:59,950 –> 00:10:01,960
و این دکمه به یک طرح اضافه شد. از
239
00:10:01,960 –> 00:10:05,200
پنجره اصلی و این روش اساسی
240
00:10:05,200 –> 00:10:06,790
برای اضافه کردن ویجت ها به همان
241
00:10:06,790 –> 00:10:09,940
پنجره است و مهم نیست که چه ویجتی را
242
00:10:09,940 –> 00:10:11,920
می خواهید اضافه کنید، همه آنها به
243
00:10:11,920 –> 00:10:14,080
یک شکل اضافه می شوند، بنابراین می توانید یک دکمه
244
00:10:14,080 –> 00:10:16,330
یا یک فیلد متنی یا خودتان اضافه کنید. می توانم ظرفی را اضافه کنم
245
00:10:16,330 –> 00:10:18,190
که خود حاوی
246
00:10:18,190 –> 00:10:21,880
عناصر دیگری است که قسمت آخر همان کاری است که من
247
00:10:21,880 –> 00:10:24,550
انجام خواهم داد در واقع اساساً
248
00:10:24,550 –> 00:10:26,500
یک تابع دیگر ایجاد خواهم کرد و سپس آن تابع
249
00:10:26,500 –> 00:10:28,540
همه دکمه ها و برچسب ها
250
00:10:28,540 –> 00:10:30,760
تولید می شوند و همچنان در داخل تابع
251
00:10:30,760 –> 00:10:32,770
همه آنها در داخل یک
252
00:10:32,770 –> 00:10:35,020
ظرف اضافه می شوند. ویجت و سپس فقط این
253
00:10:35,020 –> 00:10:36,610
کانتینر به پنجره اصلی اضافه می شود،
254
00:10:36,610 –> 00:10:40,480
بنابراین در کد،
255
00:10:40,480 –> 00:10:42,220
دو خط دکمه ساده را حذف می کنم
256
00:10:42,220 –> 00:10:43,840
و یک تابع در داخل کلاس ایجاد می کنم
257
00:10:43,840 –> 00:10:48,040
و آن را صفحه کلید می نامم و خود را در
258
00:10:48,040 –> 00:10:51,310
خط اول o قرار می دهم. صفحه کلید f کانتینر متغیر را اضافه می کنم
259
00:10:51,310 –> 00:10:53,770
و یک ویجت QT w dot Q اختصاص می دهم
260
00:10:53,770 –> 00:10:56,290
این همان چیزی است که
261
00:10:56,290 –> 00:10:58,900
همه عناصر دیگر را در خود نگه می دارد و در این
262
00:10:58,900 –> 00:11:00,820
کانتینر طرح بندی را به صورت طرح بندی شبکه ای
263
00:11:00,820 –> 00:11:03,160
با ظرفی که طرح بندی گفته شده است
264
00:11:03,160 –> 00:11:06,100
و QT را وارد می کنم طرح بندی شبکه ای را مشاهده کنید
265
00:11:06,100 –> 00:11:09,640
و با آن یک
266
00:11:09,640 –> 00:11:11,650
کانتینر خالی با طرح بندی شبکه ای ایجاد کردیم که بخشی
267
00:11:11,650 –> 00:11:13,360
از همان شیء
268
00:11:13,360 –> 00:11:15,850
ظرف خالی با طرح بندی عمودی است، اکنون
269
00:11:15,850 –> 00:11:17,950
فقط باید تمام
270
00:11:17,950 –> 00:11:20,050
ویجت ها را ایجاد و به اولین ظرف اضافه کنم و
271
00:11:20,050 –> 00:11:23,140
آن یکی را به آن لمس کنم. دومی پس بیایید
272
00:11:23,140 –> 00:11:25,630
همه ویجت ها را اضافه کنیم حالا ویجت های مورد نظر من
273
00:11:25,630 –> 00:11:27,460
به شرح زیر است. من خطی را می خواهم که
274
00:11:27,460 –> 00:11:30,130
تمام خروجی ها را نشان دهد سپس دو دکمه را
275
00:11:30,130 –> 00:11:32,530
با نتیجه و پاک کردن و سپس
276
00:11:32,530 –> 00:11:35,260
دکمه های 0 تا 9 و بدیهی است که
277
00:11:35,260 –> 00:11:37,780
کلیدهای عملگر و همه اینها هستند.
278
00:11:37,780 –> 00:11:39,520
به مقدار زیادی تایپ
279
00:11:39,520 –> 00:11:41,740
نیاز دارد، زیرا هر عنصر باید به
280
00:11:41,740 –> 00:11:42,550
صورت دستی اضافه شود،
281
00:11:42,550 –> 00:11:45,580
من قبلاً همه دکمه ها را وارد کرده ام، بنابراین
282
00:11:45,580 –> 00:11:47,110
مجبور نیستید مدت طولانی تایپ من را تماشا کنید. من
283
00:11:47,110 –> 00:11:49,540
با خط شروع کردم
284
00:11:49,540 –> 00:11:51,340
، متن را نشان می دهد و گذاشتم. آن را در متغیری به نام
285
00:11:51,340 –> 00:11:54,760
نتیجه در زیر schofield و آن را به QT
286
00:11:54,760 –> 00:11:58,920
w dot Q خط ویرایش بدون هیچ آرگومان اختصاص دهید
287
00:11:58,920 –> 00:12:00,660
سپس دو دکمه برای
288
00:12:00,660 –> 00:12:02,910
وارد کردن و حذف اعداد اضافه کردم که هر
289
00:12:02,910 –> 00:12:05,429
دو فقط دکمه های ساده هستند و
290
00:12:05,429 –> 00:12:07,259
سپس ده دکمه را با اعداد
291
00:12:07,259 –> 00:12:10,109
از صفر تا ایجاد کردم. 9 تا از آنها
292
00:12:10,109 –> 00:12:12,779
در متغیر خود ذخیره می شود و در نهایت من
293
00:12:12,779 –> 00:12:15,269
به کلیدهای عملگرها نیاز داشتم تا
294
00:12:15,269 –> 00:12:17,669
برای ضرب و تقسیم به اضافه منهای ضرب و
295
00:12:17,669 –> 00:12:19,540
تقسیم
296
00:12:19,540 –> 00:12:21,670
و با آن
297
00:12:21,670 –> 00:12:23,889
ویجت ها را ایجاد کردیم اما اکنون باید آنها را به طرح اضافه کنیم تا
298
00:12:23,889 –> 00:12:26,620
به این هدف برسیم.
299
00:12:26,620 –> 00:12:28,620
توضیح دهید که اساساً چیدمان شبکه صف چگونه کار می کند
300
00:12:28,620 –> 00:12:31,209
این نوع چیدمان
301
00:12:31,209 –> 00:12:33,430
به طور خودکار یک شبکه برای شما ایجاد می کند و این
302
00:12:33,430 –> 00:12:35,350
شبکه بسته به اینکه چقدر باید بزرگ باشد بزرگ
303
00:12:35,350 –> 00:12:38,350
می شود قسمت بالای سمت چپ آن
304
00:12:38,350 –> 00:12:41,290
مختصات 0 و 0 را داشته باشد و شما فقط باید
305
00:12:41,290 –> 00:12:43,600
فیلدها را با مشخص کردن ردیف اضافه کنید. و
306
00:12:43,600 –> 00:12:45,610
ستون و به محض اینکه یک
307
00:12:45,610 –> 00:12:47,440
عنصر را قرار می دهید، شبکه به اندازه ای بزرگ می شود
308
00:12:47,440 –> 00:12:50,230
که آن را در خود جای دهد و به طور پیش فرض هر
309
00:12:50,230 –> 00:12:52,420
عنصر در یک سلول از شبکه قرار می گیرد،
310
00:12:52,420 –> 00:12:55,180
اما می توانید عناصر را به s تعیین کنید.
311
00:12:55,180 –> 00:12:58,180
روی تعدادی سلول حرکت دهید و
312
00:12:58