小编Mat*_*ake的帖子

检查JFrame是否已打开

我正在尝试为我的程序创建一个聊天客户端,我想为每个聊天打开一个新窗口(A&B不会和A&C在同一个窗口中)我有psudocode我正在尝试但不确定如何写它.

聊天客户端:

inputstream.read()
Read who message from
If (chat window arleady open with person from)
{
    Add Message to output section of the window
{
else if (chat window not open)
{
    Open new chat window with person from
    Display message in new chat window
}
Run Code Online (Sandbox Code Playgroud)

要做到这一点,我想到的是将IP存储在一个数组中,然后每当客户端收到消息时,它将通过数组查看是否存储了IP.如果存储,则窗口应该已经打开,否则需要打开窗口.我可以使用来自JFrame的defaultonclose命令对此进行编程,以便在窗口关闭时调用IP的删除,但这是我遇到的问题.

  1. 一旦我在数组中搜索IP地址,如果窗口已经打开(比如说我有AB和C与D对话),如果C发送一条消息说它放在C窗口中,我怎么保险?

1.1我已经考虑过生成一个新线程,命名该线程,然后当一条消息进入时将它传递给与该名称匹配的线程,但我不知道该怎么做.我之前已经读过线程的名称,但从未将某些内容传递给特定的线程.

无论如何在没有下载额外库的情况下更容易做到这一点?

java swing chat jframe

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

如何显示一个char的数字

我有一个我想要显示的多维字符数组.其中一个维度中有数字(0,1,2等).当我去显示数组时,我得到了ascii结果.我意识到char输出按定义工作(char + number = ascii),但我希望专门显示数字.

防爆.

Char a = 3;

cout << a; // gives me #
Run Code Online (Sandbox Code Playgroud)

我想显示3.我尝试过转换为int: cout << (int)a;

我已经尝试在数组内部进行转换 myArray[(int)a];

这些似乎都不起作用,你不能转换const char成一个string所以我有点失落.任何帮助将不胜感激.

c++ ascii char

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

be_true rspec找不到nameerror

我有一个rspec和页面对象的问题.我有

 cell(:balance_type_tab_element, :id => 'a')
Run Code Online (Sandbox Code Playgroud)

然后我的下线了

def check_all
  check_navigation_to_and_from_balance_page
  check_printer_friendly_link
end
Run Code Online (Sandbox Code Playgroud)

然后我也有

def check_allocation_by_balance_type
  balance_type_tab?
  puts "found tab"
  puts balance_type_tab_element.visible?
  balance_type_tab_element.visible?.should be_true
end
Run Code Online (Sandbox Code Playgroud)

def check_navigation_to_and_from_balance_page
  //some other checks
  check_allocation_by_balance_type
end
Run Code Online (Sandbox Code Playgroud)

然后在一个步骤文件中

on_page(ParticipantBalanceDetailsPage).check_all
Run Code Online (Sandbox Code Playgroud)

但我一直得到错误NameError:undefined局部变量或方法`be_true'

我试过谷歌搜索但到目前为止没有运气,有人可以帮助我吗?

ruby rspec

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

如何忽略亚马逊雅典娜结构顺序

我收到一个HIVE_PARTITION_SCHEMA_MISMATCH错误,我不太确定该怎么办。当我查看 2 个不同的模式时,唯一不同的是我的一个结构中的键顺序(由胶水爬虫创建)。我真的不关心数据的顺序,我以 JSON blob 的形式接收数据,所以我不能保证键的顺序。

struct<device_id:string,user_id:string,payload:array<struct<channel:string,sensor_id:string,type:string,unit:string,value:double,name:string>>,topic:string,channel:string,client_id:string,hardware_id:string,timestamp:bigint,application_id:string>
struct<device_id:string,user_id:string,payload:array<struct<channel:string,name:string,sensor_id:string,type:string,unit:string,value:double>>,topic:string,channel:string,client_id:string,hardware_id:string,timestamp:bigint,application_id:string>
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-athena aws-glue

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

检查int的C++字符串:modified:clearing cin

可能重复:
如何验证数字输入C++

你如何做到以下几点:

while (iNumberOfPlayers <2 || iNumberOfPlayers >5)
{
    cout << "Enter number of players (1-4): ";
    cin >> iNumberOfPlayers;
    cin.clear();
    std::string s;
    cin >> s;
}
Run Code Online (Sandbox Code Playgroud)

在看完循环之后,看起来cin没有重置(如果我放入x)cin只要我在while循环中再次读取X. 猜测这是一个缓冲问题,有什么方法可以清除它?

然后我尝试了:

while (iNumberOfPlayers <2 || iNumberOfPlayers >5)
{
    cout << "Enter number of players (1-4): ";
    cin >> iNumberOfPlayers;
    cin.clear();
    cin.ignore();
}
Run Code Online (Sandbox Code Playgroud)

哪个有效,除了它一次读取所有内容.如果我输入"xyz",那么循环会经过3次,然后再停止再询问.

c++ string int cin

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

Grails将对象传递给视图并再次返回

我有一些数据需要通过我的Grails应用程序中的多个操作来持续存在.由于数据的性质,我宁愿不将数据存储在会话中.这是我想做的一个例子.

class MyController{
  def index(){
    MyObject object = MyObject.new(params.first, params.second, params.third)
    [gspObject:object]
  }

  def process(){
    MyObject object = params.gspObject
    //continue from here
  }
}
Run Code Online (Sandbox Code Playgroud)

在我的GSP中,如果我这样做

<g:form action="process" params="[gspObject:gspObject]">
Run Code Online (Sandbox Code Playgroud)

然后我得到了错误

Cannot cast object 'net.package.MyObject@699c14d8' with class 'java.lang.String' to class 'net.package.MyObject'
Run Code Online (Sandbox Code Playgroud)

我的问题是,如果我想把我发送给gsp的对象拿回来,我怎么能得到它?是否有某种范围可以保存对象,这会比会话更安全一些?有没有办法将对象传递到页面本身并在下一个请求中将其传回?

grails controller

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

grails hasOne 但不属于

我正在处理一个项目并且有一个Invoice域类,当前hasOne=[billingAddress:Address] 当我尝试启动我的服务器时,我收到以下错误:

hasOne property [Invoice.billingAddress] is not bidirectional. Specify the other side of the relationship!
Run Code Online (Sandbox Code Playgroud)

我不想分配关系的另一方...发票有一个账单地址但地址不属于发票。地址属于用户!!!

处理这种情况的正确方法是什么?

grails hibernate grails-orm

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

SQL排除内连接表

我有一个表,其中有我关心的两列

Business_ID   /   Product type
Run Code Online (Sandbox Code Playgroud)

我正在尝试编写一个 SQL 查询来仅获取销售一种类型的企业,而不获取其他类型的企业。所以表中填充的是

B_ID    prod_type
123  |   A
123  |   A
123  |   B
234  |   A
234  |   C
234  |   C
456  |   A
456  |   D
789  |   A
Run Code Online (Sandbox Code Playgroud)

这样的例子不胜枚举。我正在尝试编写一条 SQL 语句,该语句将找到一个出售 prod_type A 而不是 prod_type B、C、D 的 B_ID。这是我正在尝试的,但它不起作用

SELECT phop_1.Business_id, phop_1.PRODUCT_TYPE, count(*) 
FROM phop phop_1, phop phop_2
WHERE phop_1.Business_id = phop_2.Business_id
  AND phop_1.PRODUCT_TYPE = 'A'
  AND NOT phop_2.PRODUCT_TYPE = 'B'
GROUP BY phop_1.Business_id, phop_1.PRODUCT_TYPE
Run Code Online (Sandbox Code Playgroud)

我还找到了如何使用外部联接来排除,但由于它是同一个表,我无法这样做,除非有一种方法可以在进行联接之前选择出 prod_type A。

select phop_1.Business_id, phop_1.PRODUCT_TYPE, count(*) …
Run Code Online (Sandbox Code Playgroud)

sql inner-join

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