小编Ubi*_*ica的帖子

使用Python编写换行符时避免写回车符

如果考虑到carriage return = \rline feed = \n

Python 3.5.1 (v3.5.1:37a07cee5969, Dec  6 2015, 01:38:48) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> '{:02x}'.format(ord('\n'))
'0a'
>>> '{:02x}'.format(ord('\r'))
'0d'
Run Code Online (Sandbox Code Playgroud)

使用时如何避免写回车open('filename','w').write('text\n')

在交互模式下,您可以这样做:

>>> open('filename','w').write('text\n')
5
>>> for c in open('filename','r').read():
...     print('{:02x}'.format(ord(c)))
...
74
65
78
74
0a
Run Code Online (Sandbox Code Playgroud)

这表示只写入换行符,因此它应该是5个字节长.

-rw-r--r-- 1 djuric 197121        6 Jul 15 21:00 filename
                                  ^
Run Code Online (Sandbox Code Playgroud)

它实际上是6个字节长.现在这可以是"Windows的东西",但是当您在Notepad ++中打开文件时,如果您打开视图>显示符号>显示所有字符,您可以看到回车符.

按CTRL + H并使用扩展搜索模式替换\ r时,只剩下换行符.保存文件后,只有换行符在文件中,文件长度为5个字节.

-rw-r--r-- 1 …
Run Code Online (Sandbox Code Playgroud)

python carriage-return linefeed

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

setUndecorated(true)搞乱toFront()

当setUndecorated设置为false时,我有这两个JFrame可以正常工作,但是当它设置为true时它不能正常工作;

frame = new JFrame("Name of the frame"); // main frame
frame.setAlwaysOnTop(false);
frame.setSize(width, height);
frame.add(canvas);
frame.setUndecorated(true);
frame.setVisible(true);

menu = new MenuUI(); // this is also a undecorated JFrame
Run Code Online (Sandbox Code Playgroud)

菜单由鼠标事件调用,但它有时显示在前面,有时它显示在主框架的后面...

public static void checkMove(int action, MouseEvent e) {
    int x = e.getX();
    if(x == 0){
        menu.setVisible(true);
        menu.toFront();
    }else{
        menu.setVisible(false);
    }
Run Code Online (Sandbox Code Playgroud)

我试过这样做,frame.toBack();但它也将框架发送到其他所有内容......我怎样才能将未修饰的JFrame带到另一个未修饰的JFrame前面并使其保持一致?

编辑:鼠标事件时菜单框消失

contentPane.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseExited(MouseEvent e) {
            setVisible(false);
        }
    }); 
Run Code Online (Sandbox Code Playgroud)

编辑2:在mKorbel的回答之后,我试图创建一个JDialog,但是我得到了与JFrame相同的结果.如果扩展JDialog,如何设置父级?

package menu;

import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JDialog;

import openGL.main.openGLMain; …
Run Code Online (Sandbox Code Playgroud)

java swing jframe

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

向量<T>的内存结构

我正在玩c ++中的向量,我试图弄清楚向量在内存中的表现......

我做了这样的矢量:vector<int> numbers = { 1, 2, 3, 4, 5, 6 };并提取了一些关于矢量的信息


&numbers:002EF8B8

begin()._Ptr:0031A538

end()._Ptr:0031A550


向量存储单元002EF8B8的数据:

00 9d 31 00 38 a5 31 00 50 a531 00 50 a5 31 00 cc cc cc cc 30 31 82 1f

找到begin()._Ptrend()._Ptr存储在那里的地址......


和地址范围内的整数:

内存位置的第1个int:0031A538 = 01 00 00 00

内存位置的第二个int:0031A53C = 02 00 00 00

内存位置的第3个int:0031A540 = 03 00 00 00

内存位置的第4个int:0031A544 = 04 00 00 00

内存位置的第5个int:0031A548 = 05 00 …

c++ memory stdvector

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

标签 统计

c++ ×1

carriage-return ×1

java ×1

jframe ×1

linefeed ×1

memory ×1

python ×1

stdvector ×1

swing ×1