| Автор | Сообщение |
|
|
| moderator
|
Пост N: 2382
Зарегистрирован: 11.02.10
|
|
Отправлено: 30.10.24 15:34. Заголовок: Как я конвертировал простую прогу на Питоне в Минигуи
Ниже представлен код на Python, использующий библиотеку `tkinter` для создания графического интерфейса. | цитата: | from tkinter import Tk, Frame, Entry window = Tk() window.title("Палитра") window.geometry("600x400") frame = Frame(window, bd=5, relief="solid") frame.place(x=10, y=10, width=580, height=200) entry = Entry(window, bd=5, relief="solid", font=("Martian Mono", 20)) entry.place(x=10, y=320, width=580, height=50) while True: window.update() try: frame.configure(bg=entry.get()) except: pass |
| Описание работы кода: 1. Импорт библиотек: - `from tkinter import Tk, Frame, Entry`: Импортирует основные компоненты `tkinter` для работы с графическим интерфейсом. 2. Создание окна: - `window = Tk()`: Инициализирует главное окно приложения. - `window.title("Палитра")`: Устанавливает заголовок окна как "Палитра". - `window.geometry("600x400")`: Задает размер окна 600x400 пикселей. 3. Создание рамки (Frame): - `frame = Frame(window, bd=5, relief="solid")`: Создает рамку с границей (`bd=5`) и стильной рамкой (`relief="solid"`). - `frame.place(x=10, y=10, width=580, height=200)`: Размещает рамку в окне с координатами (10, 10) и размерами 580x200 пикселей. 4. Создание текстового поля (Entry): - `entry = Entry(window, bd=5, relief="solid", font=("Martian Mono", 20))`: Создает текстовое поле с границей и шрифтом ("Martian Mono", размер 20). - `entry.place(x=10, y=320, width=580, height=50)`: Размещает поле ввода в окне по координатам (10, 320) с размерами 580x50 пикселей. 5. Цикл обновления и изменения цвета: - `while True`: Запускает бесконечный цикл. - `window.update()`: Обновляет интерфейс. - `try`: Пытается установить цвет фона `frame` в соответствии со значением, введенным в `entry`. - `except`: Игнорирует ошибки (например, если введен некорректный цвет). Функционал: Ввод значения цвета (например, `"red"`, `"#ff0000"`) в поле ввода изменяет цвет фона рамки (`frame`). А вот что у меня получилось после конвертации этого кода в Минигуи программу: | цитата: | #include "hmg.ch" #include "winprint.ch" //////////////////////////////////////////////////////////////////// FUNCTION Main() LOCAL bg := cColorToRGB( "WHITE" ) DEFINE WINDOW Win_1 ; CLIENTAREA 600, 400 ; TITLE 'Palette' ; MAIN ; BACKCOLOR bg DrawFrame( 10, 10, 200, 580 ) @ 10, 10 LABEL frame WIDTH 580 HEIGHT 200 ; VALUE "" ; BACKCOLOR bg DrawFrame( 320, 10, 50, 580 ) DEFINE GETBOX NUL PARENT ThisWindow.Name ROW 330 COL 15 WIDTH 560 HEIGHT 30 BORDER .F. FONTNAME "Martian Mono" FONTSIZE 20 FONTBOLD .T. VALUE SPACE( 36 ) ON CHANGE { || bg := This.Value, This.frame.BackColor := ; HMG_n2RGB( cColorToRGB( iif( ColorValid( bg ), bg, "WHITE" ) ) ) } END GETBOX END WINDOW CENTER WINDOW Win_1 ACTIVATE WINDOW Win_1 RETURN NIL |
| Вот так выглядит эта прога: 
|
 |

|
|
Ответов - 8
[только новые]
|
|
|
|
| moderator
|
Пост N: 1622
Зарегистрирован: 06.07.06
|
|
Отправлено: 30.10.24 16:51. Заголовок: Руками, или с помощь..
Руками, или с помощью какого-либо инструмента?
|
 |

|
|
|
| moderator
|
Пост N: 2383
Зарегистрирован: 11.02.10
|
|
Отправлено: 30.10.24 17:24. Заголовок: alkresin пишет: с п..
alkresin пишет: | цитата: | | с помощью какого-либо инструмента? |
| Нет, только руками. Программа очень простая... 
|
 |

|
|
|
| |
Пост N: 98
Зарегистрирован: 18.06.15
|
|
Отправлено: 31.10.24 07:19. Заголовок: Уважаемый gfilatov..
Уважаемый gfilatov2002 , а в чем смысл ..? Может реально стоит с почти никому ненужного Минигуя переходить на Python ...? В чем суть моего вопроса - так вышло остался без работы, пол года найти что нибудь по профилю программирования похожего на Harbor ни к чему не привели. Спасибо за понимание ....
|
 |

|
|
|
| |
Пост N: 7988
Зарегистрирован: 17.05.05
|
|
Отправлено: 01.11.24 13:26. Заголовок: Alex_Cher Работу на..
Alex_Cher Работу нашел по профилю программирования ?
|
 |

|
|
|
| |
Пост N: 99
Зарегистрирован: 18.06.15
|
|
Отправлено: 02.11.24 09:15. Заголовок: Dima нет, не нашел ..
Dima нет, не нашел ... в общем понятно, возраст предпенсионный. Может что посоветуешь.
|
 |

|
|
|
| |
Пост N: 7989
Зарегистрирован: 17.05.05
|
|
Отправлено: 02.11.24 09:55. Заголовок: Alex_Cher да я сам ..
Alex_Cher да я сам в подвешенном состоянии , зп урезали почти 2 раза и да , мне 60+
|
 |

|
|
|
| Администратор
|
Пост N: 4190
Зарегистрирован: 23.05.05
|
|
Отправлено: 03.11.24 12:39. Заголовок: Dima пишет: да я са..
Dima пишет: | цитата: | да я сам в подвешенном состоянии , зп урезали почти 2 раза и да , мне 60+ |
| А пенсия есть ? Я за эти годы отвык от ваших реалий, поэтому и спрашиваю
|
 |

|
|
|
| |
Пост N: 7990
Зарегистрирован: 17.05.05
|
|
Отправлено: 03.11.24 13:53. Заголовок: Pasha пишет: А пенс..
Pasha пишет: у меня пока стажа не хватает 2..3 года , так что подожду еще.
|
 |

|
|