2013-07-26 3 views
1

내가 Tkinter를 선호,하지만 쉽게 다음 할 수있는 최선의 UI 라이브러리입니다 :파이썬 UI - 사용자 정의

투명 수단이 전체 창

  • 투명 배경
  • 를 통해 참조 테두리 없음
  • 텍스트 상자의 투명 배경 (스크롤 막대 포함)은 여전히 ​​텍스트 표시
  • loo 스크롤 막대
  • 변경 항목 상자

의 모양의 k는이 가능한 모든 파이썬 라이브러리에 있습니까? 저는 윈도우 7과 파이썬 2.7 (라이브러리가 3이면 3으로 코딩합니다)을 사용하고 있습니다.

라이브러리에 표시하는 방법에 대한 링크/예도 제공 할 수 있습니까?은 다음과 같습니다 미학에 관해서 만은 확실히 작업이

당신이 좀 더 심미적으로 만족입니다 pythonwx을 시도 할 수

을 수행 Tk의 수 편집보다 조금 더 많은 일을 할 수 얻을 때

+1

은 (HTTP [wxPython을이 그것을 할 수있는 것 같은데].org/Transparent % 20Frames) –

+0

그 문제는 아무 것도 표시 할 수 없다는 것입니다. – lewisjb

+0

나는 무엇을 의미하는지 잘 모르겠습니다. 내 대답이 전혀 도움이됩니까? –

답변

3

Tkinter를 꽤 제한 WX는 투명 창을 만들 수 있습니다

경우에 의해 투명 당신은 아마 하드 대부분의 사람들이 사용자 -에 대한 라이브러리로 파이 게임을 생각 해달라고하지만 어떤 파이썬 라이브러리

함께 할 수있는 창의 뒤쪽에 무엇을 볼 수있는 의미 인터페이스하지만 난 이 날씨 앱과 같이 꽤 멋진 GUI를 만들기 위해 사용되었습니다. 그것은 정말 좋은 보이지만 파이 게임의 밤은이 GUI의는 좀 더 복잡한을 구축했고 이후는하지만 난이 꽤 듣고 내가 그것을 사용하지 않은

Weather App

당신은 또한 Pyside에서 살펴 보셔야 많이 소요 더 많은 코드 좋은 이러한 제안을 물어 모든 것을 할 수 있는지 확실하지 않습니다 pyGTK

임에 살펴하지만 그들 모두를 조사하고이 도움이

희망을 결정!

+0

고마워, 투명 함으로 내가 창문 뒤에 무엇이 보이는지 알 수있다. – lewisjb

+0

흠. 파이썬으로하기가 매우 어려울 수 있지만,이 모든 것을 할 수 있는지 확실하지 않다. – Serial

+1

코디의 링크를 보면 그럴 듯하다. pythonwx 실제로 투명한 창을 만들 수 있습니다 – Serial

1

wxPython을 사용하여 프레임의 투명도를 설정할 수 있습니다. wx.Frame.SetTransparent() 메서드를 사용해야하는데, 0 (완전히 투명 함)에서 255 (완전히 불투명)까지의 인수가 사용됩니다.

파이썬 2.7 here 용 wxPython을 얻을 수도 있고, 파이썬 3.x here 용 빌드를 얻을 수도 있습니다.

내 텍스트 편집기 앞에 텍스트가있는 텍스트 상자, 레이블 및 버튼이 포함 된 프레임이 200으로 설정된 모양을 보려면 코드 스 니펫과 스크린 샷을 참조하십시오. //wiki.wxpython :

import wx 

class TransparentFrame(wx.Frame): 
    ''' Transparent Frame ''' 
    DEFAULT_ALPHA = 200 
    DEFAULT_SIZE = (400, 200) 
    TEXTCTRL_SIZE = (200, 100) 
    def __init__(self, size=DEFAULT_SIZE, *args, **kwargs): 
     wx.Frame.__init__(self, None, size=size, title='This is my title', *args, **kwargs) 
     # This is all you need to make the window transparent. 
     self.SetTransparent(self.DEFAULT_ALPHA) 

     label = wx.StaticText(self, label= 'Here is a label: ') 

     text = wx.TextCtrl(self, style=wx.TE_MULTILINE, size=self.TEXTCTRL_SIZE) 
     text.WriteText('Fill the box with text!\n' * 10) 

     button = wx.Button(self, label='This is a button') 

     sizer = wx.BoxSizer(wx.HORIZONTAL) 
     sizer.AddMany([label, text, button]) 
     self.SetSizer(sizer) 

if __name__ == '__main__': 
    app = wx.App(False) 
    frame = TransparentFrame() 
    frame.Show() 
    app.MainLoop() 

Transparent frame over my text editor

+0

투명하게 창을 만들 수 있지만 100 % 불투명도가 필요한 라벨, textctrls 및 버튼이 필요합니다. – lewisjb