Еще один способ решить мою проблему - решение, основанное на ответе @ eyllanesc и видео с киви-курса о киви . Я публикую это здесь по двум причинам: (1) с этой версией можно ясно видеть, что происходит - как и когда фон нарисован на самом деле - без другого синтаксического слоя (язык kivy) и без полностью bind
и setter
Новое для меня, (2) eyllanesc предоставил немного грязный код Python.
Код:
from kivy.config import Config
from kivy.core.window import Window
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.label import Label
from kivy.graphics import Color, Rectangle
from kivy.app import App
class LabelWithBackground(Label):
def __init__(self, bgcolor, **kwargs):
super().__init__(**kwargs)
self.bgcolor = bgcolor
self.draw_background()
def draw_background(self):
if self.canvas is not None:
self.canvas.before.clear()
with self.canvas.before:
Color(*self.bgcolor)
Rectangle(pos=self.pos, size=self.size)
def on_size(self, *args):
self.draw_background()
def on_pos(self, *args):
self.size = self.texture_size
self.draw_background()
class MyApp2(App):
def __init__(self):
super().__init__()
self.layout = BoxLayout()
self.layout.orientation = 'vertical'
self.labels = [
Label(text='label_0', color=(0, 0, 0, 1)),
LabelWithBackground(text='label_1', color=(0, 0, 0, 1), size_hint=(.5, None), bgcolor=(1, .5, 0, 1)),
Label(text='label_2', color=(0, 0, 0, 1)),
LabelWithBackground(text='label_3', color=(0, 0, 0, 1), size_hint=(None, .25), bgcolor=(1, .5, 0, 1)),
Label(text='label_4', color=(0, 0, 0, 1)),
LabelWithBackground(text='label_5', color=(0, 0, 0, 1), size_hint=(None, None), bgcolor=(1, .5, 0, 1))]
for lbl in self.labels:
self.layout.add_widget(lbl)
def build(self):
return self.layout
if __name__ == '__main__':
Config.set('input', 'mouse', 'mouse,multitouch_on_demand')
Window.clearcolor = (1, 1, 1, 1)
MyApp2().run()
Как это выглядит:
Простая система отслеживания ошибок с файлом на ошибку, структура папок для обработки состояний и соглашения о присвоении имен для более простого поиска.
Пара, которые приходят на ум
Помещение /etc
или другие каталоги/файлы конфигурации при Управлении версиями могут быть полезными при корректном выполнении.
Также некоторым людям нравится подвергать их корневой каталог управлению версиями.
Движение далее вниз пути "некода", как насчет GTD?
Если Вы сохраняете свои задачи, контексты, следующие действия, и т.д. в простом тексте, Вы могли использовать управление версиями, чтобы поддержать и воспроизвести Вашу деятельность по осуществлению проекта. Журнал (журналы) фиксации мог предоставить хорошую сводку действия, если необходимо сообщить о таких вещах.
Конфигурационные файлы. Хороший способ зарегистрировать изменения в Вашей системе. И всегда способность вернуться изменения.
В моем офисе мы используем его в качестве формы время от времени разъединенного совместного доступа к файлам. Существует приблизительно 4 ГБ файлов в ГЛАВНОМ пересмотре, и он работает блестяще. Наличие истории полной версии для всех Ваших документов является большим резервным инструментом.
У нас есть группа графических разработчиков, которых мы в настоящее время пытаемся преобразовать в Сервер Основы Команды использования через Teamprise.
Кроме того, не думайте о нем как о коде в традиционном смысле. Сценарии базы данных, индексируя сценарии для поисковых устройств, и т.д. все могут быть получены и имеющими версию, также. В сочетании с хорошим процессом сборки можно приложить много ручных усилий из развертывания этих артефактов, также.
И, как другие упомянули, документация, данные тестирования, и т.д.
Я использовал бы VC для реализации архивирования (или резервное копирование) функция данных по диску.
Также:
Не то, что Вы говорите о, но программное обеспечение управления версиями, могло быть легкой платформой для совместного доступа к файлам с другом или небольшой сетью.
По ЧИСТО ЛЕГАЛЬНЫМ ПРИЧИНАМ ТОЛЬКО, конечно.
Что-либо, что проходит версии (документы, код, презентации, реклама, изображения...) может все извлечь выгоду из управления версиями. Если существует больше, что один человек, использующий/редактирующий часть, то Вам определенно нужно управление версиями. Действительно, они должны смочь показать различия и историю дорожки, независимую от программы редактирования.
Благодаря этому сообщению от Рэндов в Отдыхе ("Отупление Облако [так]"), я изучил Dropbox, который является бесплатным онлайн устройством хранения данных с отслеживанием истории версий, откатом и совместным использованием. Для кого-то как моя жена, преподаватель, работающий с коллегами на бумагах по всей стране, это - огромный шаг вперед в их потоке операций.
Мои магазины при предприятии вся документация Жизненного цикла для каждой версии продукта в управлении версиями. Это объекты, созданные во время разработки, тестирования и выпуска продуктов.
Мы запустили это для поддержки разработки, но закончили тем, что любили иметь управление версиями и историю для документации, тестовых сценариев, и т.д.
Как студент-выпускник, ищущий работу, я использую управление версиями для своего резюме.
Почему я это делаю: