问题列表 - 第48738页

JTable单元编辑器错误

我写了一个JTable的单元格编辑器.现在它有一个bug.我希望它在第一次加载时显示默认值.编辑后,它将显示用户输入.运行应用程序,您将了解该错误.

怎么解决?

谢谢.

package com.swing;

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Arrays;

import javax.swing.DefaultCellEditor;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;

public class PropPageTest extends JPanel {

    private static final long serialVersionUID = 1555593265606867986L;

    public JTableX table;
    public DefaultTableModel model;
    private String[] col_names = { "Name", "Value" };
    private String[] anchor_values = { "CENTER", "NORTH" };
    public String[] default_value = {"John", "NORTH"};

    public boolean isFirstTimeLoad = true;

    private void createGUI() {
        setLayout(new BorderLayout());

        model …
Run Code Online (Sandbox Code Playgroud)

java swing jtable cell

0
推荐指数
1
解决办法
948
查看次数

一个"功能查找表"代替开关

我最近遇到了一些代码,通过硬编码替换了交换机的使用

Dictionary<string (or whatever we would've been switching on), Func<...>> 
Run Code Online (Sandbox Code Playgroud)

而且无论转换到底在哪里,它都会改为dict ["value"].调用(...).代码在某种程度上感觉不对,但与此同时,这些方法确实看起来更清晰一些,特别是在有很多可能的情况下.我不能给出任何关于为什么这是好的或坏的设计的理由,所以我希望有人可以给出一些支持/谴责这种代码的理由.性能有提升吗?失去清晰度?

例:

public class A {
    ...
    public int SomeMethod(string arg){
        ...
        switch(arg) {
            case "a": do stuff; break;
            case "b": do other stuff; break;
            etc.
        }
        ...
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

public class A {

    Dictionary<string, Func<int>> funcs = new Dictionary<string, Func<int>> {
        { "a", () => 0; },
        { "b", () => DoOtherStuff(); }
        ... etc.
    };

    public int SomeMethod(string arg){
        ...
        funcs[arg].Invoke();
        ...
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

c# lambda switch-statement

7
推荐指数
2
解决办法
4435
查看次数

如何快速替换数组中的字符

我在XML文件上使用XML文本阅读器,该文件可能包含对读者无效的字符.我最初的想法是创建我自己的流阅读器版本并清除坏角色,但它严重减慢了我的程序.

public class ClensingStream : StreamReader
{
        private static char[] badChars = { '\x00', '\x09', '\x0A', '\x10' };
    //snip
        public override int Read(char[] buffer, int index, int count)
        {
            var tmp = base.Read(buffer, index, count);

            for (int i = 0; i < buffer.Length; ++i)
            {
                //check the element in the buffer to see if it is one of the bad characters.
                if(badChars.Contains(buffer[i]))
                    buffer[i] = ' ';
            }

            return tmp;
        }
}
Run Code Online (Sandbox Code Playgroud)

根据我的探查器,代码花了88%的时间用于if(badChars.Contains(buffer[i]))正确的方法,所以我没有造成可怕的缓慢?

c# optimization

4
推荐指数
1
解决办法
3273
查看次数

如何强制Perl中的对象属性设置为完整数组而不仅仅是其长度?

我有一个我用方法childNodes()定义的对象,它返回一个数组.当我做类似的事情时:

my @arr = obj->childNodes()

我可以清楚地看到它可以正确返回数组.

我的问题是,当我尝试使用此方法设置另一个类对象的属性时,Perl决定我只想要childNodes()的长度而不是完整的数组.这根本不是我想要的,并且毁掉了一切.我正在使用的代码是:

$self->{'_arr'} = obj->childNodes()

如何将此set $ self - > {'_ arr'}设置为数组而不仅仅是标量数?

提前致谢!

perl

1
推荐指数
1
解决办法
143
查看次数

sql row_number重置为0值

我有一个包含以下值的表:

Value
0
1.2
1.3
1.4
0
1.2
1.3
1.4
Run Code Online (Sandbox Code Playgroud)

从上面的数据中,我需要将设置重置为0后的2个最高数字相加,从而得到总数2.8.

如果我每次有0都可以让row_number()重新启动,那将是完美的,但它不提供这样的功能.

谢谢.

sql sql-server sql-server-2008

1
推荐指数
1
解决办法
3792
查看次数

Android启动系统设置而不是我的应用程序

出于某种原因,每当我(尝试)启动我的应用程序时,手机决定启动系统设置而不是我的"主要活动".是的,我指的是"Android系统设置",而不是我的应用程序.

这只发生在我的手机上,我想这可能与我的应用刚刚打开系统设置的事实有关,当我决定用Eclipse的新版本重新启动时.

可以从Eclipse中启动应用程序,但是当我从应用程序导航回来时它返回到系统设置而不是主屏幕,就好像首先启动设置活动然后启动我的活动一样.如果我然后从手机启动应用程序,我得到的只是系统设置.

该应用程序正在侦听特定URL子字符串的VIEW操作,当我使用匹配的URL启动应用程序时,我得到的结果与从Eclipse启动应用程序时相同,应用程序启动,但是当我返回时,我返回设置.

我已经尝试使用谷歌搜索这个问题,而我所能找到的是关于Android 应用程序被杀死时的Android 保存状态,但没有任何关于如何重置此状态的信息.我试过卸载应用程序,查杀系统设置,重新启动手机,重新安装,清除应用程序数据..没有运气..

对于它的价值,这里是清单中我主要活动的定义,

<activity android:name=".HomeActivity" android:label="@string/app_name" android:screenOrientation="portrait" android:clearTaskOnLaunch="true" android:launchMode="singleTop">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.VIEW"></action>
        <category android:name="android.intent.category.DEFAULT"></category>
        <category android:name="android.intent.category.BROWSABLE"></category>
        <data android:pathPrefix="/isak-web-mobile/smart/" android:scheme="http" android:host="*"></data>
    </intent-filter>
 </activity>
Run Code Online (Sandbox Code Playgroud)

这是从我尝试启动我的应用程序时的logcat行,没有任何关于任何设置的地方.

I/ActivityManager( 1301): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=se.opencare.isak/.HomeActivity }
Run Code Online (Sandbox Code Playgroud)

当我从Eclipse启动时,我也得到了这一行(正如人们所期望的那样),

I/ActivityManager( 1301): Start proc se.opencare.isak for activity se.opencare.isak/.HomeActivity: pid=23068 uid=10163 gids={3003, 1007, 1015}
Run Code Online (Sandbox Code Playgroud)

如果重要的话,手机是HTC Desire Z,运行2.2.1.

目前,这是我的HomeActivity,

public class HomeActivity extends Activity {
    public static final String TAG = "HomeActivity";

    @Override …
Run Code Online (Sandbox Code Playgroud)

android android-intent android-activity

17
推荐指数
1
解决办法
1993
查看次数

如何通过在Android屏幕上刷你的数字来翻阅图片?

有人可以告诉我如何在画廊中创建Android手机风格的图片视图.也就是说,当您单击图片时,它会弹出一个全屏幕,您可以在屏幕上滑动手指并翻阅文件夹中的其他图片.

你如何创建特定的视图?

android android-image

2
推荐指数
1
解决办法
662
查看次数

如何在SiteMinder后面调用WCF Http Service

我试图调用在ASP.NET应用程序中托管的WCF 4 Http Web服务.该服务受SiteMinder保护.

我想知道如何以编程方式调用Web服务,更具体地说,我需要传递哪些信息才能在SiteMinder中获得授权以访问我的资源.

我从同一台服务器上运行的ASP.NET应用程序发出请求,因此我可以访问身份验证cookie.

asp.net cookies web-services siteminder

4
推荐指数
1
解决办法
4832
查看次数

Android Location API:获取提供商状态

获取位置提供商状态的Android中最好的方法是什么?注册LocationListener以进行位置更新时,onStatusChanged(String provider, int status, Bundle extras)只要状态发生更改,就会调用回调.但是,我没有找到获取当前状态(的方式AVAILABLE,OUT_OF_SERVICE,TEMPORARILY_UNAVAILABLE)没有注册到位置更新.该isProviderEnabled方法仅指示提供者是否通常打开(在设备的设置中),因此可能会返回,true尽管提供程序已停止服务...是否有其他方法可以执行此操作?

另一个问题:是否可以在不注册位置更新的情况下监听状态更新?我想听一个特定的提供商的位置,但同时检查其他人是否可用.我目前的解决方法是将最小时间和距离设置为一个非常高的值,但我想知道是否有更好的解决方案......

谢谢你的任何提示!

顺便说一句:如果可能,解决方案应该适用于Android 1.1

android

5
推荐指数
1
解决办法
2573
查看次数

循环执行速度控制

有没有办法控制循环的执行速度?我有一个以30000步循环运行的模拟.我想想象一下在那个循环中发生的事情,如果可能的话,在运行时控制执行的速度.任何想法我怎么能这样做?

java loops

2
推荐指数
2
解决办法
1864
查看次数