我创建了总共27个按钮,其中26个按钮单击了一个.在表单加载时看不到的另一个按钮只有在用户单击其中一个按钮后才能看到,然后单击的按钮将隐藏在表单中.这是我的方法:
private void frmGame_Load(object sender, EventArgs e)
{
btn1.Click += clickHandler;
btn2.Click += clickHandler;
btn3.Click += clickHandler;
btn4.Click += clickHandler;
btn5.Click += clickHandler;
btn6.Click += clickHandler;
btn7.Click += clickHandler;
btn8.Click += clickHandler;
btn9.Click += clickHandler;
btn10.Click += clickHandler;
btn11.Click += clickHandler;
btn12.Click += clickHandler;
btn13.Click += clickHandler;
btn14.Click += clickHandler;
btn15.Click += clickHandler;
btn16.Click += clickHandler;
btn17.Click += clickHandler;
btn18.Click += clickHandler;
btn19.Click += clickHandler;
btn20.Click += clickHandler;
btn21.Click += clickHandler;
btn22.Click += clickHandler;
btn23.Click += clickHandler;
btn24.Click += clickHandler; …Run Code Online (Sandbox Code Playgroud) 我正在运行Dojo1.9.1,并注意到在我已经修复按钮以及编程生成的按钮的页面上,程序化按钮更短.我在jsfiddle上重现了这个问题 https://jsfiddle.net/gregorco/6sn6998t/3/
HTML:
Run Code Online (Sandbox Code Playgroud)<div id="testDiv"> <table> <tr> <td> <div id="divForProgButton"></div> </td> <td> <div> <button data-dojo-type="dijit/form/Button" data-dojo-id="declaredButton" id="declaredButton" type="button">Declarative Button two pixels taller??</button> </div> </td> </tr> </table> </div>
JAVASCRIPT:
require(["dojo/dom",
"dojo/parser", "dojo/dom-construct", "dijit/form/Button", "dojo/ready"], function (dom, parser, domConstruct, Button, ready) {
ready(function () {
parser.parse("testDiv");
var buttonsDiv = dom.byId("divForProgButton");
var progButton = new Button({
'id': 'programmaticButton',
'name': 'programmaticButton',
'innerHTML': 'Programmatic Button'
});
domConstruct.place(progButton.domNode, buttonsDiv);
progButton.startup();
});
});
Run Code Online (Sandbox Code Playgroud)
它很微妙,但你可以看到(以及与Firebug一起确认)第一个按钮更短.这里只有2个像素,但在我的系统上它缩短了4个像素 - 更加引人注目.我尝试了claro和tundra两个主题,两者都产生了相同的高度差异.
使用Firebug检查生成的HTML显示声明性按钮包含HTML,以支持从未实际显示的图标.程序化Button不会生成与此类图标相关的HTML.不知道这怎么可能导致声明性Button更高,但我没有看到任何其他差异.
任何人都能理解程序化Button和声明性Button之间的这种差异,以及如何避免这种差异?
我感谢您提供的任何帮助.
谢谢.
我正在尽可能多地使用QT Designer以及对Slots-Signals和Widget界面的一些理解,而不会跳转到与UI相关的代码.
我正在使用带有QT插件的Visual Studio 2013来创建应用程序.在我的实际应用程序(在C++中)"做"别的东西,我让我们说一个需要2个文件路径的函数.到目前为止,我已经手动硬编码,如:
String s1("The path");
Run Code Online (Sandbox Code Playgroud)
我想添加一个GUI,以便能够单击"浏览"按钮并找到该文件,并s1在我的应用程序的函数中将其位置检索到String.
有了这个简单的目标,我需要一个简单的窗口,其中两个文件都有一个Browse按钮,一个区域显示加载的资源(如果是图像),如果可能的话,虽然不是绝对必要的.
这就是为什么我拿起QT来实现这样的目标.我已经能够进行基本设计和插槽信号自定义调用.但我不知道,如何进一步使用浏览按钮的目标.
是否有任何预先构建的功能/代码/设施可以在快捷方式中实现它,或者可能是在QT中实际执行它的想法(我都是为了这个)?
例如像这段代码.
Button button1 = (Button)findViewById(R.id.button1);
Run Code Online (Sandbox Code Playgroud)
用于的按钮中的括号()是什么?
我正在制定一个计划,我差不多完成了.我想要的是:在JTextField中键入一个String,按下JButton,我希望String在另一个JTextField中出现.所以我有:2个JTextField和1个Button.这是我的代码:
class Fenster extends JFrame {
JTextField inputfield;
JTextField outputfield;
JButton button;
public Fenster() {
JTextField outputfield = new JTextField();
outputfield.setBounds(50, 315, 400, 32);
add(outputfield);
JTextField inputfield = new JTextField();
inputfield.setBounds(50, 115, 400, 32);
add(inputfield);
//The Button
JButton button = new JButton("Klick me :D");
button.setBounds(154, 250, 92, 32);
button.addActionListener(new buttonlistener());
add(button);
private class buttonlistener implements ActionListener {
public void actionPerformed(ActionEvent e) {
String string = inputfield.getText();
outputfield.setText(string);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我知道我没有包含JFrame设置.请帮助,因为每次我按下按钮错误:"buttonlistener.actionPerformed(Fenster.java:70)"显示:S
提前致谢
我正在使用渐变创建图像,我希望按钮具有cornerRadius
button = UIButton.buttonWithType(UIButtonType.Custom) as! UIButton
button.frame = CGRectMake(self.view.frame.size.width/2 - button.frame.size.width, 100, 250, 50)
button.layer.cornerRadius = 3
button.setTitle("ViewThree", forState: UIControlState.Normal)
button.addTarget(self, action: "ViewControllerAction:", forControlEvents: UIControlEvents.TouchUpInside)
button.setBackgroundImage(getImageWithGradient(UIColor(netHex:0x2d72cf).CGColor, bottom: UIColor(netHex:0x2d72cf).CGColor, size: CGSize(width: button.bounds.width, height: button.bounds.height), frame: button.bounds), forState: UIControlState.Normal)
func getImageWithGradient(top: CGColor, bottom: CGColor, size: CGSize, frame: CGRect) -> UIImage{
var image = UIImage()
UIGraphicsBeginImageContext(frame.size)
var context = UIGraphicsGetCurrentContext()
image.drawAtPoint(CGPointMake(0, 0))
let colorSpace = CGColorSpaceCreateDeviceRGB()
let locations:[CGFloat] = [0.0, 1.0]
let gradient = CGGradientCreateWithColors(colorSpace,
[top, bottom], locations)
let startPoint = CGPointMake(frame.size.width / …Run Code Online (Sandbox Code Playgroud) 我试图在窗体上移动2个按钮,使用while循环检查按钮left属性,但我有一个访问冲突.我正在使用CreateThread()来讨论这个过程
The code:
procedure AnimButton1();
var ImageCount: integer;
var b1, b2: integer;
begin
try
while (b2 <> 187) do
begin
b2 := frmNotification.btnBuzina2.Left;
frmNotification.btnBuzina2.Left := b2 - 1;
end;
while (b1 <> 256) do
begin
b1 := frmNotification.btnBuzina.Left;
frmNotification.btnBuzina.Left := b1 - 1;
end;
except;
end;
end;
Run Code Online (Sandbox Code Playgroud)
但是,当我使用Sleep()至少5毫秒时,我没有访问冲突,如下所示:
procedure AnimButton1();
var ImageCount: integer;
var b1, b2: integer;
begin
try
while (b2 <> 187) do
begin
b2 := frmNotification.btnBuzina2.Left;
frmNotification.btnBuzina2.Left := b2 - 1;
Sleep(5);
end;
while (b1 <> 256) do …Run Code Online (Sandbox Code Playgroud) 我正在尝试在指令发出就绪状态时禁用控制器中的按钮.
我传入一个布尔值ng-disabled:
<button ng-disabled="{{pointsClaimed}}" ng-click="playVideo()">{{buttonText}}</button>
Run Code Online (Sandbox Code Playgroud)
我的控制器:
$scope.buttonText = 'Watch Video to Claim Points';
$scope.pointsClaimed = false;
$scope.$on('pointsClaimed', function(){
$scope.buttonText = 'Points Claimed!';
$scope.pointsClaimed = true;
});
Run Code Online (Sandbox Code Playgroud)
我可以看到按钮从false变为true:


但实际按钮未被禁用.
如果我硬编码为真或假,它按预期工作.如果值在HTML中按预期更改,为什么按钮不被禁用?
我已经为一个按钮指定了2个状态(按下和未按下状态).按下的按钮有一个填充的颜色,而未按下的按钮有一个带有一些文本的边框.当用户触摸时,如何使未按下的按钮淡入按下的按钮,并在用户松开按钮后立即恢复到未按下的按钮?
编辑:
似乎大多数答案并没有完全解决我的问题,虽然transitiondrawable似乎可以工作,但我不知道如何用我当前的代码实现它.
为了进一步说明,以下是我的代码,用于存储在名为button.xml的drawable文件夹中的按钮
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@drawable/buttonpressed"
android:state_enabled="true"
android:state_pressed="true"/>
<item
android:drawable="@drawable/buttonnormal"
android:state_enabled="true"/>
</selector>
Run Code Online (Sandbox Code Playgroud)
我已经在我的主xml文件中引用了drawable xml.
我希望能够在按下按钮时从"按钮正常"淡入"按下按钮",并在按钮被释放时恢复为"按钮正常".
我有一个按钮的vba脚本,它在我的工作簿中的每个工作表上放置一个按钮.我想对这些按钮进行编程,这样每次按下它们时,它们都会调用一个打印脚本来打印纸张上的信息.这是我对按钮的代码:
Sub AddButtons()
Dim ws As Excel.Worksheet
Dim btn As Button
For Each ws In ThisWorkbook.Worksheets
Set btn = ws.Buttons.Add(625, 0, 50, 25)
Call pageprintTEST1(ws)
Next ws
End Sub
Run Code Online (Sandbox Code Playgroud)
这是我对打印脚本的代码:
Sub pageprintTEST1(ws As Excel.Worksheet)
Application.Dialogs(xlDialogPrinterSetup).Show
Worksheets(ws).Activate
With ActiveWorkbook.Worksheets(ws).PageSetup
.PrintArea = "A1:O48"
.Orientation = xlLandscape
.Zoom = False
.FitToPagesTall = 1
.FitToPagesWide = 1
End With
ActiveWorkbook.Worksheets(ws).PrintOut
Run Code Online (Sandbox Code Playgroud)
我一直遇到一些问题.首先,这个脚本为每个工作表添加了按钮,我只希望从工作表5向前添加到工作表上的按钮(因此前4页上没有按钮).其次,它不等我打开打印机对话框之前单击按钮,一旦你选择了打印机,它就会显示错误不匹配.
我研究了如何将变量传递给不同的subs和call方法,这似乎是正确的,但现在我不确定我哪里出错了.如果有人有任何建议或知道该怎么做,我将非常感激!