Мы поможем в написании ваших работ!
ЗНАЕТЕ ЛИ ВЫ?
|
При желании можно задать стилевые опции для всех виджетов сразу:с помощью метода tk_setpalette(). Помимо использованных выше свойств в этом методе можно
Содержание книги
- c = db.connect(database="tvprogram") cu = c.cursor()
- ОРТ|Новости|Новости|9.15 10.02.2003 9.15|ОРТ|"НЕЖНЫЙ ЯД"|Сериал|10.15
- c = db.connect(database="tvprogram") cu = c.cursor()
- Для СУБДPostgreSQLнужно взять неPyGreSQL,аpsycopg,так как в первом есть
- Лекция#11:Многопоточные вычисления
- Поддержка многопоточности в языкеPythonдоступна через использование ряда модулей.В
- Пример многопоточной программы
- Thread(group, target, name, args, kwargs)
- print "Hello, world!"
- Замки позволяют ограничивать вход в некоторую область программы одним потоком. Замки могут потребоваться для обеспечения целостности структуры данных. Например,если для
- print "Процесс %s запрашивает ресурс %s" % (n, r)
- from threading import BoundedSemaphore maxconnections = 5
- Еще одним способом коммуникации между объектами являются события.Экземпляры
- notify() и notifyAll() другими потоками.Необязательный аргумент timeout
- quot;""Занесение нового элемента в контейнер и оповещение потоков"""
- quot;""Занесение нового элемента в контейнер и оповещение потоков"""
- Следующий пример иллюстрирует параллельность выполнения потоков,используя возможности библиотеки графических примитивов Tkinter(она входит в стандартную
- quot;""Выход из программы"""
- Параллельное программирование требует тщательной отработки взаимодействия между потоками управления.Некоторые участки кода необходимо ограждать от одновременного
- В лекции будет рассматриваться пакетtkinter,который по сути является оберткой дляtcl/tk - известного графического пакета для сценарного языка tcl. На примере этого
- Вхождение курсора в пределы виджета
- Focusin. Получение фокуса окном. Focusout. Keypress. Нажатие клавиши на клавиатуре. Keyrelease. Отжатие клавиши на клавиатуре. Выход курсора за пределы виджета. Motion. Движение мыши в пределах виджета. Mousewheel. Прокрутка колесика мыши. Reparent. Измен
- tk = Tk() # основное окно приложения
- Создание и конфигурирование виджета
- from Tkinter import * tk = Tk()
- При желании можно задать стилевые опции для всех виджетов сразу:с помощью метода tk_setpalette(). Помимо использованных выше свойств в этом методе можно
- from Tkinter import * import urllib
- from Tkinter import * tk = Tk()
- b[1, 3].pack(side=BOTTOM, fill=Y) b[1, 4].pack(side=BOTTOM, fill=BOTH)
- import Tkinter, Image, ImageTk
- start=0, extent=150, fill="blue")
- c.itemconfigure(CURRENT, fill=choice(colors))
- c = Canvas(tk, height=300, bg="white")
- Виджеты располагаются внутри другого виджета(например,рамки)в соответствии с набором правил.Этот набор правил реализуют менеджеры расположения,которых в
- Лекция#13:ИнтеграцияPythonс другими языками
- Py_Finalize(),Py_NewInterpreter(),Py_EndInterpreter(),Py_SetProgramName() и
- include "Python.h" #include "md5.h"
- number of bits, modulo 2^64 (lsb
- return PyString_FromStringAndSize((char *)aDigest, 16);
- MD5_new(PyObject *self, PyObject *args)
- Пример встраивания интерпретатора в программу на C
- Здесь же следует сделать Еще одно замечание:программа,встраивающаяpython,не должна много раз выполнять py_initialize() и py_finalize(),так как это может
- File : freq.i */ %module freq. typemap(out) int * { int i;. result = PyTuple_New(256); for(i=0; i<256; i++). PyTuple_SetItem($result, i, PyLong_FromLong($1[i])); free($1);. extern int * frequency(char s[]);. swig -python freq.i. I/usr/local/lib/python2
- PyLong_FromLong(result[i])); free(result);
- X, Y = self.getSize().width, self.getSize().height label.setText("%s x %s" % (X, Y))
- panel.add(button, "South") lines = Lines() panel.add(lines, 'Center')
- print " yes:", query
- let foo_bar_print = pywrap_closure
- import StringIO, token, tokenize
- prog_example = """
При желании можно задать стилевые опции для всех виджетов сразу:с помощью метода tk_setPalette().Помимо использованных выше свойств в этом методе можно
использовать selectForeground и selectBackground(передний план и фон выделения),selectColor(цвет в выбранном состоянии,например,у Checkbutton),insertBackground
(цвет точки вставки) и некоторые другие.
Примечание:
Получить значение из поля ввода можно и при помощи метода get().Например,если назвать объект класса Entry именем e,получить значение можно так:e.get().Правда,этот метод не обладает той же гибкостью,что метод get() экземпляров класса для форматированного текста Text:можно взять только все значение целиком.
Виджет форматированного текста
Для того чтобы показать работу с нетривиальным виджетом,можно взять виджет ScrolledText из одноименного модуляPython.Этот виджет аналогичен рамке с
форматированным текстом и вертикальной полосой прокрутки:
from Tkinter import *
from ScrolledText import ScrolledText
tk = Tk() # окно верхнего уровня
txt = ScrolledText(tk) # виджет текста с прокруткой
txt.pack() # виджет размещается
for x in range(1, 1024): # виджет наполняется текстовым
содержимым
txt.insert(END, str(2L**x)+"\n")
tk.mainloop()

Теперь следует рассмотреть методы и свойства виджета с форматированным текстом более подробно.
Для навигации в тексте вTkпредусмотрены специальные индексы.Индексы вроде 1.0 и END уже встречались-это начало текста(первая строка,нулевой символ)и его конец. (ВTk строки нумеруются с единицы, а символы строки - с нуля). Более полный список индексов:
· L.C Здесь L-номер строки,а C-номер символа в строке.
· INSERT Точка вставки.
· CURRENT Символ,ближайший к курсору мыши.
· END Позиция сразу за последним символом в тексте
· M.first, M.last Индексы начала и конца помеченного тегомMучастка текста.
· SEL_FIRST, SEL_LAST Индексы начала и конца выделенного текста.
· M Пользователь может определять свои именованные позиции в тексте(аналогично END,INSERT или CURRENT).При редактировании текста маркеры будут сдвигаться с заданными для них правилами.
· @x,y Символ текста,ближайший к точке с координатами x,y.
Следующий пример показывает,как снабдить форматированный текст гипертекстовыми возможностями:
|