我有正在处理的银行gui应用程序,我的jdialog的setvisible方法似乎有问题.在用户撤回有效金额后,我弹出一个简单的对话框,其中显示"正在进行交易".在我的dobackground方法中,我继续轮询以检查是否已收到交易.我尝试使用swingworker,我不明白为什么它不起作用.如果我删除setvisible调用它工作正常,那么为什么setvisible导致系统挂起?这是我的jbutton mouselistener中的代码:
SwingWorker<String,Integer> worker = new SwingWorker<String,Integer>(){
JDialog waitForTrans = new JDialog((JFrame)null,true);
public String doInBackground() throws Exception {
waitForTrans.add(new JLabel("Updating balance in system. Please Wait..."));
waitForTrans.setMinimumSize(new Dimension(300,100));
waitForTrans.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
waitForTrans.setVisible(true);
Bank.getInstance().sendTransaction(currentPin,"-"+withdraw);
while(!Bank.getInstance().hasCompletedTransaction){
}
return null;
}
public void done(){
try {
this.get();
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
waitForTrans.setVisible(false);
newField.setText(String.valueOf(Bank.getInstance().getAccountList().get(currentPin).getBalance()));
}
};
worker.execute();
Run Code Online (Sandbox Code Playgroud) 我正在使用 mojarra primefaces tomcat6.x 制作一个 JSF2.0 项目。
我做了一个选择列表,当我选择列表中的项目时,我想重定向到选定的 url。它可以是内部 URL。
这是可行的,但我想知道是否可以在新窗口中重定向。
我有以下代码 JSF:
<h:form>
<h:selectOneMenu onchange="this.form.submit();" valueChangeListener="#{wagent.selectBusinessTravelLink}">
<f:selectItem itemLabel="#{msg['form.select.defaultValue']}" itemValue="" noSelectionOption="true"/>
<f:selectItems value="#{wagent.businessTravelLinks}" var="bLinkItem" itemLabel="#{bLinkItem.label}" itemValue="#{bLinkItem.id}" />
</h:selectOneMenu>
</h:form>
Run Code Online (Sandbox Code Playgroud)
爪哇:
public void selectBusinessTravelLink(ValueChangeEvent event) {
// some stuff
FacesContext.getCurrentInstance().getExternalContext().redirect(targetUrl);
}
Run Code Online (Sandbox Code Playgroud) 在一个简短的方法中,我使用setVisible(false)隐藏JFrame.然后我截取屏幕截图并使用setVisible(true)恢复JFrame.
在再次显示之后,窗口应该显示与之前不同的图片(假设拍摄截图的一部分).
问题是在调用setVisible(true)之后,在调用paintComponent并绘制更新状态之前,窗口会使用旧内容闪烁一瞬间.
我可能会以一种丑陋的方式解决这个问题,但我想知道是否有更好的解决方案.
在此先感谢您的帮助
编辑:在准备一个例子的时候,我注意到,当我不在程序中使用透明度时几乎看不到效果.应该提到这一点.这是我想出的:
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Toolkit;
import javax.swing.JFrame;
import javax.swing.JPanel;
import com.sun.awt.AWTUtilities;
public class Test {
static boolean flag = false;
static Dimension scrSize = Toolkit.getDefaultToolkit().getScreenSize();
public static void main(String[] args) throws InterruptedException {
JFrame frame = new JFrame();
frame.setUndecorated(true);
AWTUtilities.setWindowOpaque(frame, false); //draw on a transparent window
frame.setSize(scrSize.width, scrSize.height);
frame.setContentPane(new JPanel() {
protected void paintComponent(Graphics g)
{
if (Test.flag) {
g.setColor(Color.RED);
g.drawRect(50, 50, scrSize.width - 100, scrSize.height - 100);
}
else { …Run Code Online (Sandbox Code Playgroud) 有没有办法让PowerShell作业报告进度或在事件完成之前触发事件?我刚刚开始在PowerShell中执行后台作业,并且想知道我能在多大程度上推动这项功能.
我有一个default.aspx页面需要每10秒刷新一次.
到目前为止,我的解决方案是一个javascript函数,但它只适用于Firefox而不是IE.
我正在寻找一种方法来处理default.aspx.cs页面中的刷新机制,而不是使用某种Timer.
任何好的简单的sugestions /提示或解决方案可以引导我朝着正确的方向前进?
嘿伙计们.明天我和一家优秀的公司接受电话采访,担任初级软件工程师职位.我已经离开了大学,已经有3个月的单身汉了,而且我的C++有点生疏,因为自从我使用它以来已经有几个学期了.我正在审查它(目前正在制定指针),为明天做好准备.以下是对工作的描述.人们会建议我最大限度地为面试做准备?你认为面试官会问我应该做些什么样的问题?非常感谢.这对我来说很重要.
责任
技能要求
我们正在开发一个aspx网站,我们希望在我们准备发布之前不向用户展示.Default.aspx似乎比我的index.html文件有更多"强大".我想要做的就是默认显示index.html,在网站上工作时,我们可以导航到Default.aspx并从那里开始工作.
好.我有一个荒谬的问题.我正在尝试使用URL重写从www.domain.com重定向到www.domain.com/default.aspx.
我想通过将default.aspx设置为默认文档,它会自动将用户放在那里.但出于某种原因,它仍然出现在www.domain.com上.
我希望它访问www.domain.com/default.aspx的原因是,当它只是www.domain.com时,页面上的登录控件似乎不想工作.但是当然如果我输入www.domain.com/default.aspx,那么登录工作正常.如果它是www.domain.com,登录控件似乎根本不发布.无论如何,我试图避免解决为什么登录控制没有触发,只要有人试图访问www.domain.com,就强迫它登陆default.aspx.我正在使用IIS7.这里有什么想法?
我有来自第三方的数字证书,当我尝试运行以下ms-dos命令来授予对NETWORKSERVICE帐户的访问权限时,我收到以下错误.
winhttpcertcfg -g-c LOCAL_MACHINE\MY -s "TransUnion Net Access Client" -a "Networkservice"
Error: Unable to update security info for key container error = 0x5.
Run Code Online (Sandbox Code Playgroud)
那是什么意思?如何允许我的证书访问该NT Authority\Network Service帐户?
在此先感谢您的帮助!
仅供参考,我包括以下内容.我跑了这个命令
winhttpcertcfg -l-c LOCAL_MACHINE\MY -s "TransUnion Net Access Client"
Run Code Online (Sandbox Code Playgroud)
目前只有以下帐户可以访问私钥:
BUILT IN\AdministratorsNT AUTHORITY\System我是开发android的新手.我有一个网格包含在一个网格中,构成网格的LinearLayout每个项目都是一个按钮.LinearLayout当用户按下任何这些按钮时,我希望它不可见.
这是我的'home'布局shell:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android">
<TextView/>
<LinearLayout> //<-- this is the layout I want to hide
<TextView/>
<GridView/>
</LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
这是我在MyArrayAdapter中设置的onClick方法(用于膨胀按钮)
@Override
public void onClick(View v) {
View convertView = activity.getLayoutInflater().inflate(R.layout.layout_home, null);
LinearLayout ll_options = (LinearLayout) convertView.findViewById(R.id.ll_options);
ll_options.setVisibility(View.INVISIBLE);
}
Run Code Online (Sandbox Code Playgroud)
我认为它应该可以工作,但是当我测试它时,没有任何反应.
我发现了一个类似的问题,但它并没有解决我的问题.
asp.net ×3
visibility ×3
java ×2
redirect ×2
swing ×2
android ×1
asynchronous ×1
background ×1
c# ×1
c++ ×1
jsf ×1
jsf-2 ×1
layout ×1
new-window ×1
powershell ×1
repaint ×1
swingworker ×1
task ×1
timer ×1
transparency ×1