建立在:http: //www.reddit.com/r/Python/comments/7v5ra/whats_your_favorite_gui_toolkit_and_why/
1 - 易于设计/集成 - 学习曲线
2 - 支持/可用于*nix,Windows,Mac,本机l&f的额外积分,支持移动或网络
3 - pythonic API
4 - 文档质量 - 我想做一些更复杂的事情,现在是什么?
5 - 重量轻的包装,所以没有必要包括一个完整的安装程序(py2exe,理想情况下py2app将按原样工作,不会产生大量MBs文件)
6 - 许可
7 - 其他人?(请注明)
1 - tkinter,目前支持(截至2.6,3.0)
2 - pyttk库
3 - pyGTK
4 - pyQt
5 - wxPython
6 - 通过基于Python的框架(Django,Turbogears,web.py,Pylons ......)或粘贴的HTML-CGI
7 - 其他人?(请注明)
我目前有一个带GUI的应用程序.
是否可以从命令行使用相同的应用程序(没有GUI和使用参数).
或者我是否必须为命令行工具创建单独的.exe(和应用程序)?
在Swing中,我们可以禁用这样的按钮:
JButton start = new JButton("Start");
start.setEnabled(false);
Run Code Online (Sandbox Code Playgroud)
无论如何使用JavaFX Button执行此操作?用户应该只能按一次按钮.
您知道哪些技术用于创建用户友好的GUI?
我可以命名以下特别有用的技术:
您是否在软件中实现了列出的技术?
编辑:
正如Ryan P所提到的,创建可用应用程序的最佳方法之一就是将自己置于用户的位置.我完全同意这一点,但我想在本主题中看到的是具体技术(如我上面提到的那些)而不是一般性建议.
是否可以使用Firefox插件创建Selenium测试,该插件使用随机生成的值来帮助进行回归测试?
全文: 我想帮助我的客户进行验收测试,为他们提供一套测试,使用一些智能为数据库创建随机(或至少伪随机)值.目前我的Selenium IDE测试的一个问题是它们具有预定义的值 - 这使得某些类型的测试成为问题.
是否可以包含Windows域凭据以使用SOAP UI测试我的Web服务?
我找到了一个属性页面,但IIS只响应"错误的凭据".
我正试图执行我的第一次Git合并(令人兴奋!),但无法在Windows 7上识别Git Gui(0.13GITGUI,来自Git 1.7.4.msysgit.0)以识别TortoiseMerge(1.6.11.20210 x64).基于对类似问题的回答,我进行了以下配置更改:
$ git config --global merge.tool tortoisemerge
$ git config --global mergetool.tortoisemerge.cmd 'TortoiseMerge.exe -base:"$BASE" -mine:"$LOCAL" -theirs:"$REMOTE" -merged:"$MERGED"'
$ git config --global --list
...snip...
merge.tool=tortoisemerge
mergetool.tortoisemerge.cmd=TortoiseMerge.exe -base:"$BASE" -mine:"$LOCAL" -theirs:"$REMOTE" -merged:"$MERGED"
$
Run Code Online (Sandbox Code Playgroud)
不幸的是,当我启动Git Gui并尝试"运行合并工具"时,我收到错误Unsupported merge tool 'tortoisemerge'.
谁能告诉我我做错了什么?这是我的相关部分~/.gitconfig:
[merge]
tool = tortoisemerge
[mergetool "tortoisemerge"]
cmd = TortoiseMerge.exe -base:\"$BASE\" -mine:\"$LOCAL\" -theirs:\"$REMOTE\" -merged:\"$MERGED\"
Run Code Online (Sandbox Code Playgroud)
更新
git mergetool从命令行运行时,TortoiseMerge可以正常使用上面的配置.似乎只有Git Gui有问题.: - /
我正在创建一个 iOS 扫雷游戏,并希望在顶部有一个包含三条信息的栏:
然而,正如您在底部的图片中看到的那样,元素并不是均匀对齐的 - 我猜垫片自动具有相同的尺寸。因此,由于屏幕左侧的文本比右侧的文本宽,因此中间的文本会向右偏移。
如何对齐这些项目,使中心时间/图像与左侧/右侧的其他对象完全位于中间?
我的代码如下所示:
struct GameView: View {
@EnvironmentObject var game: Game
@State var labelHeight = CGFloat.zero
var body: some View {
VStack(alignment: .center, spacing: 10) {
Text("MINESWEEPER")
.font(.system(size: 25, weight: .bold, design: .monospaced))
.kerning(3)
.foregroundColor(.red)
HStack(alignment: .center, spacing: 5) {
Image(systemName: "rosette")
.resizable()
.aspectRatio(contentMode: .fit)
.foregroundColor(.black)
Text(game.highScoreString)
.font(.system(size: 15, weight: .bold, design: .monospaced))
.foregroundColor(.black)
Spacer()
Image(systemName: "timer")
.resizable()
.aspectRatio(contentMode: .fit)
.foregroundColor(.black)
Text(game.timerString)
.font(.system(size: 15, weight: .bold, design: .monospaced))
.foregroundColor(.black)
Spacer()
Image("top_bomb")
.resizable() …Run Code Online (Sandbox Code Playgroud) 我正在为一个尚未意识到控件的人做一个例子,ListBox不需要包含字符串; 他一直在存储格式化的字符串并跳过复杂的解析箍,以便将数据从中恢复出来,ListBox我想告诉他有更好的方法.
我注意到如果我有一个对象存储在ListBox然后更新一个影响的值ToString,则ListBox不会自行更新.我试过打电话Refresh和Update控制,但都不起作用.这是我正在使用的示例的代码,它要求您将列表框和按钮拖到窗体上:
Public Class Form1
Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)
MyBase.OnLoad(e)
For i As Integer = 1 To 3
Dim tempInfo As New NumberInfo()
tempInfo.Count = i
tempInfo.Number = i * 100
ListBox1.Items.Add(tempInfo)
Next
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
For Each objItem As Object In ListBox1.Items
Dim info As NumberInfo = DirectCast(objItem, NumberInfo)
info.Count …Run Code Online (Sandbox Code Playgroud) 我有一个scrollview里面有一个多行的editext .我想滚动edittext以查看较低的内容,但无法完成.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="@android:color/holo_blue_light"
android:gravity="center" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="View Complaint"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:padding="20dp" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:text="Order Number 0100C1"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="Name of ClientClient 1"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="Subject : Measurement Issues"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:text="Description"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView6" …Run Code Online (Sandbox Code Playgroud)